Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 951999 - dev-libs/protobuf-29.4 - [gcc-15] generated_message_tctable_full.cc: error: cannot tail-call: call may throw exception that does not propagate
Summary: dev-libs/protobuf-29.4 - [gcc-15] generated_message_tctable_full.cc: error: c...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Gentoo Toolchain Maintainers
URL:
Whiteboard:
Keywords:
Depends on: 951997
Blocks: gcc-15
  Show dependency tree
 
Reported: 2025-03-24 19:13 UTC by Toralf Förster
Modified: 2025-03-26 12:39 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
emerge-info.txt (emerge-info.txt,17.80 KB, text/plain)
2025-03-24 19:13 UTC, Toralf Förster
Details
dev-libs:protobuf-29.4:20250324-163410.log (dev-libs:protobuf-29.4:20250324-163410.log,110.59 KB, text/plain)
2025-03-24 19:13 UTC, Toralf Förster
Details
emerge-history.txt (emerge-history.txt,58.82 KB, text/plain)
2025-03-24 19:13 UTC, Toralf Förster
Details
environment (environment,118.54 KB, text/plain)
2025-03-24 19:13 UTC, Toralf Förster
Details
etc.clang.tar.xz (etc.clang.tar.xz,1.21 KB, application/x-xz)
2025-03-24 19:13 UTC, Toralf Förster
Details
etc.portage.tar.xz (etc.portage.tar.xz,22.30 KB, application/x-xz)
2025-03-24 19:13 UTC, Toralf Förster
Details
logs.tar.xz (logs.tar.xz,43.37 KB, application/x-xz)
2025-03-24 19:13 UTC, Toralf Förster
Details
qlist-info.txt (qlist-info.txt,146.77 KB, text/plain)
2025-03-24 19:13 UTC, Toralf Förster
Details
temp.tar.xz (temp.tar.xz,31.49 KB, application/x-xz)
2025-03-24 19:13 UTC, Toralf Förster
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Toralf Förster gentoo-dev 2025-03-24 19:13:26 UTC
too long lines were shrinked:

                 from /var/tmp/portage/dev-libs/protobuf-29.4/work/protobuf-29.4/src/google/protobuf/generated_message_tctable_impl.h:23,
                 from /var/tmp/portage/dev-libs/protobuf-29.4/work/protobuf-29.4/src/google/protobuf/generated_message_tctable_full.cc:34:
/usr/lib/gcc/x86_64-pc-linux-gnu/15/include/g++-v15/ciso646:46:4: warning: #warning "<ciso646> is deprecated in C++17, use <version> to detect implementation-specific macros" [-Wcpp]
   46 | #  warning "<ciso646> is deprecated in C++17, use <version> to detect implementation-specific macros"
      |    ^~~~~~~
/var/tmp/portage/dev-libs/protobuf-29.4/work/protobuf-29.4/src/google/protobuf/generated_message_tctable_full.cc: In static member function static const char* google::protobuf::internal::TcParser::MessageSetWireFormatParseLoop(google::protobuf::MessageLite*, const char*, google::protobuf::internal::
/var/tmp/portage/dev-libs/protobuf-29.4/work/protobuf-29.4/src/google/protobuf/generated_message_tctable_full.cc:96:70: error: cannot tail-call: call may throw exception that does not propagate
   96 |   PROTOBUF_MUSTTAIL return MessageSetWireFormatParseLoopImpl<Message>(
      |                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^

  -------------------------------------------------------------------

  This is an unstable amd64 chroot image at a tinderbox (==build bot)
  name: 23.0_no_multilib_systemd-20250323-150506

  KEYWORDED/UNMASKED

  [gcc-15] Requested by sam
  <sys-devel/gcc-15.0.9999:15

  The attached etc.portage.tar.xz has all details.
  -------------------------------------------------------------------

gcc-config -l:
 [1] x86_64-pc-linux-gnu-15 *
clang version 20.1.1
llvm-config: 20.1.1
Python 3.12.9
go version go1.24.1 linux/amd64
Available Ruby profiles:
  [1]   ruby32 (with Rubygems) *
Available Rust versions:
  [1]   rust-bin-1.85.1 *
The following VMs are available for generation-2:
*)	Eclipse Temurin JDK 21.0.6_p7 [openjdk-bin-21]
2)	Eclipse Temurin JDK 8.442_p06 [openjdk-bin-8]
Available Java Virtual Machines:
  [1]   openjdk-bin-8 
  [2]   openjdk-bin-21  system-vm


  HEAD of ::gentoo
commit 6d55ff23986b7f91b4f9fdb3998eeb18c809f0cb
Author: Repository mirror & CI <repomirrorci@gentoo.org>
Date:   Mon Mar 24 15:35:23 2025 +0000

    2025-03-24 15:35:22 UTC

emerge -qpvO =dev-libs/protobuf-29.4
[ebuild  N    ] dev-libs/protobuf-29.4  USE="libprotoc protobuf protoc zlib -conformance -debug -emacs -examples -libupb -test"
Comment 1 Toralf Förster gentoo-dev 2025-03-24 19:13:27 UTC
Created attachment 922510 [details]
emerge-info.txt
Comment 2 Toralf Förster gentoo-dev 2025-03-24 19:13:29 UTC
Created attachment 922511 [details]
dev-libs:protobuf-29.4:20250324-163410.log
Comment 3 Toralf Förster gentoo-dev 2025-03-24 19:13:30 UTC
Created attachment 922512 [details]
emerge-history.txt
Comment 4 Toralf Förster gentoo-dev 2025-03-24 19:13:31 UTC
Created attachment 922513 [details]
environment
Comment 5 Toralf Förster gentoo-dev 2025-03-24 19:13:32 UTC
Created attachment 922514 [details]
etc.clang.tar.xz
Comment 6 Toralf Förster gentoo-dev 2025-03-24 19:13:33 UTC
Created attachment 922515 [details]
etc.portage.tar.xz
Comment 7 Toralf Förster gentoo-dev 2025-03-24 19:13:34 UTC
Created attachment 922516 [details]
logs.tar.xz
Comment 8 Toralf Förster gentoo-dev 2025-03-24 19:13:35 UTC
Created attachment 922517 [details]
qlist-info.txt
Comment 9 Toralf Förster gentoo-dev 2025-03-24 19:13:36 UTC
Created attachment 922518 [details]
temp.tar.xz
Comment 10 Larry the Git Cow gentoo-dev 2025-03-26 12:39:33 UTC
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(+)