Created attachment 922741 [details] failed build log FAILED: host/obj/third_party/protobuf/protobuf_lite/generated_message_tctable_lite.o /usr/bin/x86_64-pc-linux-gnu-g++ -MMD -MF host/obj/third_party/protobuf/protobuf_lite/generated_message_tctable_lite.o.d -DUSE_UDEV -DUSE_AURA=1 -DUSE_OZONE=1 -DOFFICIAL_BUILD -DTOOLKIT_QT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -DNO_UNWIND_TABLES -D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_NONE -DNDEBUG -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -DGOOGLE_PROTOBUF_NO_RTTI -DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER -DGOOGLE_PROTOBUF_INTERNAL_DONATE_STEAL_INLINE=0 -DHAVE_PTHREAD -Ihost/gen -I../../../../../qtwebengine-everywhere-src-6.8.2/src/3rdparty/chromium -I../../../../../qtwebengine-everywhere-src-6.8.2/src/3rdparty/chromium/third_party/protobuf/src -fno-ident -fno-strict-aliasing -fstack-protector -Wno-unknown-pragmas -Wno-address -Wno-parentheses -Wno-sign-compare -Wno-stringop-overflow -Wno-stringop-overread -Wno-psabi -Wno-multichar -Wno-format-zero-length -fno-unwind-tables -fno-asynchronous-unwind-tables -fPIC -pipe -pthread -m64 -msse3 -O2 -fdata-sections -ffunction-sections -fno-math-errno -fno-omit-frame-pointer -g0 -fvisibility=hidden -Wno-unused-local-typedefs -Wno-maybe-uninitialized -Wno-deprecated-declarations -fno-delete-null-pointer-checks -Wno-comments -Wno-packed-not-aligned -Wno-dangling-else -Wno-missing-field-initializers -Wno-unused-parameter -Wno-psabi -Wno-deprecated-copy -Wno-expansion-to-defined -std=gnu++20 -fno-exceptions -fno-rtti -fvisibility-inlines-hidden -Wno-narrowing -Wno-class-memaccess -Wno-attributes -Wno-class-memaccess -Wno-subobject-linkage -Wno-invalid-offsetof -Wno-return-type -Wno-deprecated-copy -march=native -O3 -mprefer-vector-width=512 -fno-vect-cost-model -pipe -c ../../../../../qtwebengine-everywhere-src-6.8.2/src/3rdparty/chromium/third_party/protobuf/src/google/protobuf/generated_message_tctable_lite.cc -o host/obj/third_party/protobuf/protobuf_lite/generated_message_tctable_lite.o ../../../../../qtwebengine-everywhere-src-6.8.2/src/3rdparty/chromium/third_party/protobuf/src/google/protobuf/generated_message_tctable_lite.cc: In static member function ‘static const char* google::protobuf::internal::TcParser::MpPackedFixed(google::protobuf::MessageLite*, const char*, google::protobuf::internal::ParseContext*, const google::protobuf::internal::TcParseTableBase*, uint64_t, google::protobuf::internal::TcFieldData)’: ../../../../../qtwebengine-everywhere-src-6.8.2/src/3rdparty/chromium/third_party/protobuf/src/google/protobuf/generated_message_tctable_lite.cc:1438:45: error: cannot tail-call: address of caller arguments taken 1438 | PROTOBUF_MUSTTAIL return MpRepeatedFixed(PROTOBUF_TC_PARAM_PASS); | ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ In static member function ‘static const char* google::protobuf::internal::TcParser::TagDispatch(google::protobuf::MessageLite*, const char*, google::protobuf::internal::ParseContext*, const google::protobuf::internal::TcParseTableBase*, uint64_t, google::protobuf::internal::TcFieldData)’, inlined from ‘static const char* google::protobuf::internal::TcParser::ToTagDispatch(google::protobuf::MessageLite*, const char*, google::protobuf::internal::ParseContext*, const google::protobuf::internal::TcParseTableBase*, uint64_t, google::protobuf::internal::TcFieldData)’ at ../../../../../qtwebengine-everywhere-src-6.8.2/src/3rdparty/chromium/third_party/protobuf/src/google/protobuf/generated_message_tctable_lite.cc:121:39, inlined from ‘static const char* google::protobuf::internal::TcParser::MpPackedFixed(google::protobuf::MessageLite*, const char*, google::protobuf::internal::ParseContext*, const google::protobuf::internal::TcParseTableBase*, uint64_t, google::protobuf::internal::TcFieldData)’ at ../../../../../qtwebengine-everywhere-src-6.8.2/src/3rdparty/chromium/third_party/protobuf/src/google/protobuf/generated_message_tctable_lite.cc:1459:41: ../../../../../qtwebengine-everywhere-src-6.8.2/src/3rdparty/chromium/third_party/protobuf/src/google/protobuf/generated_message_tctable_lite.cc:107:46: error: cannot tail-call: address of caller arguments taken 107 | PROTOBUF_MUSTTAIL return fast_entry->target(PROTOBUF_TC_PARAM_PASS); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
Created attachment 922743 [details] emerge --info
Last successful build was 2025-03-18T12:46:56, would have been using weekly snapshot gcc-15.0.1_pre20250316
(In reply to tdr from comment #2) > Last successful build was 2025-03-18T12:46:56, would have been using weekly > snapshot gcc-15.0.1_pre20250316 Haven't confirmed but that makes it sounds like a gcc15-specific issue that "could" be regression. CC'ing toolchain@.
The story here is that GCC 15 will support [[clang::musttail]], but it turns out that [[clang::musttail]] in Clang (and as it's a Clang-namespaced extension, they get to decide the semantics) takes a "UB on invalid input" approach rather than diagnosing. The plan is to make [[clang::musttail]] relaxed (matching Clang) and to have [[gnu::musttail]] with diagnostics. This shows up now in qtwebengine because __has_attribute sees musttail is available, so it automagically uses it (which is fine), just a GCC bug then gets in the way. I'm probably going to backport a patch to just temporarily disable musttail again until next week, as various fixes are landing.
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=251f3a203f46d414fc28559b43614e0506291536 commit 251f3a203f46d414fc28559b43614e0506291536 Author: Sam James <sam@gentoo.org> AuthorDate: 2025-03-26 12:36:39 +0000 Commit: Sam James <sam@gentoo.org> CommitDate: 2025-03-26 12:39:03 +0000 sys-devel/gcc: backport two fixes to 15.0.1_pre20250323 See https://bugs.gentoo.org/952059#c4, quoting that: > The story here is that GCC 15 will support [[clang::musttail]], but it > turns out that [[clang::musttail]] in Clang (and as it's a Clang-namespaced > extension, they get to decide the semantics) takes a "UB on invalid input" > approach rather than diagnosing. > > The plan is to make [[clang::musttail]] relaxed (matching Clang) and to > have [[gnu::musttail]] with diagnostics. > > This shows up now in qtwebengine because __has_attribute sees musttail is > available, so it automagically uses it (which is fine), just a GCC bug > then gets in the way. > > I'm probably going to backport a patch to just temporarily disable musttail > again until next week, as various fixes are landing. I've also backported a fix to fix an e2fsprogs/sqlite miscompilation on x86. Closes: https://bugs.gentoo.org/951997 Closes: https://bugs.gentoo.org/951999 Closes: https://bugs.gentoo.org/952059 Closes: https://bugs.gentoo.org/952085 Signed-off-by: Sam James <sam@gentoo.org> .../gcc-15.0.1_pre20250323-disable-musttail.patch | 199 +++++++++++++++++++++ .../files/gcc-15.0.1_pre20250323-e2fsprogs.patch | 112 ++++++++++++ sys-devel/gcc/gcc-15.0.1_pre20250323-r1.ebuild | 54 ++++++ 3 files changed, 365 insertions(+)
Thanks!