Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Can't build on gcc-g++ 14.0.0 #51369

Closed
bocchi810 opened this issue Jan 4, 2024 · 6 comments
Closed

Can't build on gcc-g++ 14.0.0 #51369

bocchi810 opened this issue Jan 4, 2024 · 6 comments
Labels
build Issues and PRs related to build files or the CI. dependencies Pull requests that update a dependency file.

Comments

@bocchi810
Copy link

bocchi810 commented Jan 4, 2024

Version

21.5.0

Platform

Linux DESKTOP-LN5CS60 6.6.8-microsoft-standard-WSL2 #2 SMP Sun Dec 31 21:27:57 CST 2023 x86_64 GNU/Linux

Subsystem

No response

What steps will reproduce the bug?

First,clone the gcc latest source (commit a945c346f57ba40fc80c14ac59be0d43624e559d) code and build it
./configure
make -j12

How often does it reproduce? Is there a required condition?

No response

What is the expected behavior? Why is that the expected behavior?

No response

What do you see instead?

  g++ -o /home/hhm/nodejs/out/Release/obj.target/icui18n/deps/icu-small/source/i18n/tridpars.o ../deps/icu-small/source/i18n/tridpars.cpp '-D_GLIBCXX_USE_CXX11_ABI=1' '-DNODE_OPENSSL_CONF_NAME=nodejs_conf' '-DNODE_OPENSSL_HAS_QUIC' '-DICU_NO_USER_DATA_OVERRIDE' '-D__STDC_FORMAT_MACROS' '-DOPENSSL_NO_PINSHARED' '-DOPENSSL_THREADS' '-DU_I18N_IMPLEMENTATION=1' '-DU_ATTRIBUTE_DEPRECATED=' '-DU_STATIC_IMPLEMENTATION=1' '-DUCONFIG_NO_SERVICE=1' '-DU_ENABLE_DYLOAD=0' '-DU_HAVE_STD_STRING=1' '-DUCONFIG_NO_BREAK_ITERATION=0' -I../deps/icu-small/source/i18n -I../deps/icu-small/source/common  -pthread -Wall -Wextra -Wno-unused-parameter -Wno-deprecated-declarations -Wno-strict-aliasing -m64 -O3 -fno-omit-frame-pointer -fno-exceptions -std=gnu++17 -frtti -MMD -MF /home/hhm/nodejs/out/Release/.deps//home/hhm/nodejs/out/Release/obj.target/icui18n/deps/icu-small/source/i18n/tridpars.o.d.raw   -c
../deps/simdjson/simdjson.cpp: In static member function 'static simdjson::error_code simdjson::fallback::{anonymous}::stage2::tape_builder::parse_document(simdjson::fallback::dom_parser_implementation&, simdjson::dom::document&) [with bool STREAMING = false]':
../deps/simdjson/simdjson.cpp:16566:49: error: inlining failed in call to 'always_inline' 'simdjson::error_code simdjson::fallback::{anonymous}::stage2::json_iterator::walk_document(V&) noexcept [with bool STREAMING = false; V = simdjson::fallback::{anonymous}::stage2::tape_builder]': target specific option mismatch
16566 | simdjson_warn_unused simdjson_inline error_code json_iterator::walk_document(V &visitor) noexcept {
      |                                                 ^~~~~~~~~~~~~
../deps/simdjson/simdjson.cpp:17003:39: note: called from here
17003 |   return iter.walk_document<STREAMING>(builder);
      |          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~
../deps/simdjson/simdjson.cpp:16566:49: error: inlining failed in call to 'always_inline' 'simdjson::error_code simdjson::fallback::{anonymous}::stage2::json_iterator::walk_document(V&) noexcept [with bool STREAMING = false; V = simdjson::fallback::{anonymous}::stage2::tape_builder]': target specific option mismatch
16566 | simdjson_warn_unused simdjson_inline error_code json_iterator::walk_document(V &visitor) noexcept {
      |                                                 ^~~~~~~~~~~~~
../deps/simdjson/simdjson.cpp:17003:39: note: called from here
17003 |   return iter.walk_document<STREAMING>(builder);
      |          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~
  g++ -o /home/hhm/nodejs/out/Release/obj.target/icui18n/deps/icu-small/source/i18n/collationweights.o ../deps/icu-small/source/i18n/collationweights.cpp '-D_GLIBCXX_USE_CXX11_ABI=1' '-DNODE_OPENSSL_CONF_NAME=nodejs_conf' '-DNODE_OPENSSL_HAS_QUIC' '-DICU_NO_USER_DATA_OVERRIDE' '-D__STDC_FORMAT_MACROS' '-DOPENSSL_NO_PINSHARED' '-DOPENSSL_THREADS' '-DU_I18N_IMPLEMENTATION=1' '-DU_ATTRIBUTE_DEPRECATED=' '-DU_STATIC_IMPLEMENTATION=1' '-DUCONFIG_NO_SERVICE=1' '-DU_ENABLE_DYLOAD=0' '-DU_HAVE_STD_STRING=1' '-DUCONFIG_NO_BREAK_ITERATION=0' -I../deps/icu-small/source/i18n -I../deps/icu-small/source/common  -pthread -Wall -Wextra -Wno-unused-parameter -Wno-deprecated-declarations -Wno-strict-aliasing -m64 -O3 -fno-omit-frame-pointer -fno-exceptions -std=gnu++17 -frtti -MMD -MF /home/hhm/nodejs/out/Release/.deps//home/hhm/nodejs/out/Release/obj.target/icui18n/deps/icu-small/source/i18n/collationweights.o.d.raw   -c
make[1]: *** [deps/simdjson/simdjson.target.mk:84: /home/hhm/nodejs/out/Release/obj.target/simdjson/deps/simdjson/simdjson.o] Error 1
make[1]: *** Waiting for unfinished jobs....
^Cmake[1]: *** [tools/v8_gypfiles/torque_base.target.mk:178: /home/hhm/nodejs/out/Release/obj.target/torque_base/deps/v8/src/torque/implementation-visitor.o] Interrupt
make[1]: *** [tools/v8_gypfiles/torque_base.target.mk:178: /home/hhm/nodejs/out/Release/obj.target/torque_base/deps/v8/src/torque/torque-parser.o] Interrupt
make: *** [Makefile:134: node] Interrupt

Additional information

No response

@targos
Copy link
Member

targos commented Jan 4, 2024

This comes from simdjson. /cc @lemire

@targos targos added build Issues and PRs related to build files or the CI. dependencies Pull requests that update a dependency file. labels Jan 4, 2024
@lemire
Copy link
Member

lemire commented Jan 4, 2024

GCC 14? Let us check.

@lemire
Copy link
Member

lemire commented Jan 4, 2024

GCC 14.0.0 is unreleased.
https://gcc.gnu.org

The latest version is GCC 13.2.

@targos Does Node support unreleased compilers?

@lemire
Copy link
Member

lemire commented Jan 5, 2024

@targos

The simdjson library supports GCC up to GCC 13.2. We have tests in CI. If Node.js supports GCC 14.0.0 prior to its release, we will investigate. If so, I would appreciate details on how Node.js supports GCC 14. Does Node.js have CI runners with GCC 14? How are they configured?

@targos
Copy link
Member

targos commented Jan 5, 2024

I was not aware it was an unreleased version of GCC. We don't really support those (but would accept a patch if someone wants to contribute).

@lemire
Copy link
Member

lemire commented Jan 5, 2024

@targos In which case, I suggest closing this issue.

Note that you can test simdjson with different compilers (including 'gcc trunk') and different flags on godbolt.

https://godbolt.org/z/ecMzsc3bn

@targos targos closed this as not planned Won't fix, can't repro, duplicate, stale Jan 5, 2024
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
build Issues and PRs related to build files or the CI. dependencies Pull requests that update a dependency file.
Projects
None yet
Development

No branches or pull requests

3 participants