https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114687
Bug ID: 114687 Summary: ICE: in edge_before_returns_twice_call, at gimple-iterator.cc:981 Product: gcc Version: 14.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: sanitizer Assignee: unassigned at gcc dot gnu.org Reporter: iamanonymous.cs at gmail dot com CC: dodji at gcc dot gnu.org, dvyukov at gcc dot gnu.org, jakub at gcc dot gnu.org, kcc at gcc dot gnu.org Target Milestone: --- Compiler Explorer: https://godbolt.org/z/vPM1Gshzx ******************************************************************************* OS and Platform: $ uname -a: Linux ubuntu 4.15.0-213-generic #224-Ubuntu SMP Mon Jun 19 13:30:12 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux ******************************************************************************* gcc version: $ gcc -v Using built-in specs. COLLECT_GCC=/root/gcc_set/202404101100/bin/gcc COLLECT_LTO_WRAPPER=/root/gcc_set/202404101100/libexec/gcc/x86_64-pc-linux-gnu/14.0.1/lto-wrapper Target: x86_64-pc-linux-gnu Configured with: ../gcc/configure --prefix=/root/gcc_set/202404101100 --with-gmp=/root/build_essential --with-mpfr=/root/build_essential --with-mpc=/root/build_essential --enable-languages=c,c++ --disable-multilib --with-sanitizer=address,undefined,thread,leak Thread model: posix Supported LTO compression algorithms: zlib gcc version 14.0.1 20240410 (experimental) (GCC) git version: 0774240b4df9a9bc48ce33a9625788e402498f5a ******************************************************************************* Program: $ cat mutant.c int a; int b(int); __attribute__((pure, returns_twice)) int c() { a = 1; while (a) a = 2; return a; } int e(void) { int d = c(); b(d); } ******************************************************************************* Command Lines: $ gcc -fsanitize=address -O1 -c mutant.c during GIMPLE pass: asan mutant.c: In function āeā: mutant.c:9:5: internal compiler error: in edge_before_returns_twice_call, at gimple-iterator.cc:981 9 | int e(void) { | ^ 0x792bf8 edge_before_returns_twice_call ../../gcc/gcc/gimple-iterator.cc:981 0xcb169e gsi_safe_insert_before(gimple_stmt_iterator*, gimple*) ../../gcc/gcc/gimple-iterator.cc:1054 0x1060c36 maybe_instrument_call ../../gcc/gcc/asan.cc:3032 0x1060c36 transform_statements ../../gcc/gcc/asan.cc:3118 0x1060fe7 asan_instrument ../../gcc/gcc/asan.cc:4262 0x1060fe7 execute ../../gcc/gcc/asan.cc:4303 Please submit a full bug report, with preprocessed source (by using -freport-bug). Please include the complete backtrace with any bug report. See <https://gcc.gnu.org/bugs/> for instructions.