Skip to content
New issue

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

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

Already on GitHub? Sign in 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
Sign up for free to join this conversation on GitHub. Already have an account? Sign in 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