https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119537
Bug ID: 119537
Summary: ICE with [[gnu::assume]] vs computed goto
Product: gcc
Version: 15.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: middle-end
Assignee: unassigned at gcc dot gnu.org
Reporter: sjames at gcc dot gnu.org
Target Milestone: ---
This comes from lcamtuf: https://x.com/lcamtuf/status/1905745238666490269
```
#include <stdio.h>
int main() {
goto *&&x;
[[gnu::assume( ({x: puts("hi");}) )]];
}
```
```
$ gcc-15 a.c -c
during GIMPLE pass: cfg
a.c: In function ‘main’:
a.c:3:5: internal compiler error: Segmentation fault
3 | int main() {
| ^~~~
0x5eb37ea0acee internal_error(char const*, ...)
/usr/src/debug/sys-devel/gcc-15.0.9999/gcc-15.0.9999/gcc/diagnostic-global-context.cc:517
0x5eb37e1815d9 crash_signal
/usr/src/debug/sys-devel/gcc-15.0.9999/gcc-15.0.9999/gcc/toplev.cc:323
0x78051861fd5f ???
/usr/src/debug/sys-libs/glibc-2.41.9999/glibc-2.41.9999/signal/../sysdeps/unix/sysv/linux/x86_64/libc_sigaction.c:0
0x5eb37d3a64d3 cleanup_control_flow_bb
/usr/src/debug/sys-devel/gcc-15.0.9999/gcc-15.0.9999/gcc/tree-cfgcleanup.cc:313
0x5eb37ec63dbb cleanup_control_flow_pre
/usr/src/debug/sys-devel/gcc-15.0.9999/gcc-15.0.9999/gcc/tree-cfgcleanup.cc:925
0x5eb37ec62880 cleanup_tree_cfg_noloop
/usr/src/debug/sys-devel/gcc-15.0.9999/gcc-15.0.9999/gcc/tree-cfgcleanup.cc:1090
0x5eb37ec62880 cleanup_tree_cfg(unsigned int)
/usr/src/debug/sys-devel/gcc-15.0.9999/gcc-15.0.9999/gcc/tree-cfgcleanup.cc:1205
0x5eb37ec44585 execute_build_cfg
/usr/src/debug/sys-devel/gcc-15.0.9999/gcc-15.0.9999/gcc/tree-cfg.cc:380
0x5eb37ec44585 execute
/usr/src/debug/sys-devel/gcc-15.0.9999/gcc-15.0.9999/gcc/tree-cfg.cc:414
Please submit a full bug report, with preprocessed source (by using
-freport-bug).
Please include the complete backtrace with any bug report.
See <https://bugs.gentoo.org/> for instructions.
```