https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115232
Bug ID: 115232 Summary: [14 regression] ICE during GIMPLE pass Product: gcc Version: 14.1.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: vopl at bk dot ru Target Milestone: --- $ cat ./ice-14.cpp && echo EOFFFFF // g++-14 -std=c++20 -v -c ./ice-14.cpp /////////0/////////1/////////2/////////3/////////4/////////5/////////6/////////7 template<class T> struct Outer { Outer(); template <class U> static constexpr bool staticTemplatedConstant = true; template <class U> void method() requires staticTemplatedConstant<U> { struct Inner { static void* operator new(unsigned long /*sz*/) {return new char;} static void operator delete(void*) {} Outer<void> _outerInstance; }; new Inner; } }; /////////0/////////1/////////2/////////3/////////4/////////5/////////6/////////7 void f() { Outer<void>{}.method<void>(); } EOFFFFF $ g++-14 -std=c++20 -v -c ./ice-14.cpp Using built-in specs. COLLECT_GCC=g++-14 Target: x86_64-pc-linux-gnu Configured with: /var/tmp/portage/sys-devel/gcc-14.1.1_p20240518/work/gcc-14-20240518/configure --host=x86_64-pc-linux-gnu --build=x86_64-pc-linux-gnu --prefix=/usr --bindir=/usr/x86_64-pc-linux-gnu/gcc-bin/14 --includedir=/usr/lib/gcc/x86_64-pc-linux-gnu/14/include --datadir=/usr/share/gcc-data/x86_64-pc-linux-gnu/14 --mandir=/usr/share/gcc-data/x86_64-pc-linux-gnu/14/man --infodir=/usr/share/gcc-data/x86_64-pc-linux-gnu/14/info --with-gxx-include-dir=/usr/lib/gcc/x86_64-pc-linux-gnu/14/include/g++-v14 --disable-silent-rules --disable-dependency-tracking --with-python-dir=/share/gcc-data/x86_64-pc-linux-gnu/14/python --enable-languages=c,c++,fortran --enable-obsolete --enable-secureplt --disable-werror --with-system-zlib --disable-nls --disable-libunwind-exceptions --enable-checking=release --with-bugurl=https://bugs.gentoo.org/ --with-pkgversion='Gentoo 14.1.1_p20240518 p1' --with-gcc-major-version-only --enable-libstdcxx-time --enable-lto --disable-libstdcxx-pch --enable-shared --enable-threads=posix --enable-__cxa_atexit --enable-clocale=gnu --enable-multilib --with-multilib-list=m32,m64 --disable-fixed-point --enable-targets=all --enable-libgomp --disable-libssp --disable-libada --enable-cet --enable-systemtap --disable-valgrind-annotations --enable-vtable-verify --with-zstd --with-isl --disable-isl-version-check --enable-default-pie --enable-host-pie --enable-host-bind-now --disable-default-ssp --disable-fixincludes --with-build-config='bootstrap-lto bootstrap-cet' Thread model: posix Supported LTO compression algorithms: zlib zstd gcc version 14.1.1 20240516 (Gentoo 14.1.1_p20240518 p1) COLLECT_GCC_OPTIONS='-std=c++20' '-v' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' /usr/libexec/gcc/x86_64-pc-linux-gnu/14/cc1plus -quiet -v -D_GNU_SOURCE ./ice-14.cpp -quiet -dumpbase ice-14.cpp -dumpbase-ext .cpp -mtune=generic -march=x86-64 -std=c++20 -version -fcf-protection -o /tmp/cc0hiSMi.s GNU C++20 (Gentoo 14.1.1_p20240518 p1) version 14.1.1 20240516 (x86_64-pc-linux-gnu) compiled by GNU C version 14.1.1 20240516, GMP version 6.3.0, MPFR version 4.2.1, MPC version 1.3.1, isl version isl-0.26-GMP GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 ignoring nonexistent directory "/usr/local/include" ignoring nonexistent directory "/usr/lib/gcc/x86_64-pc-linux-gnu/14/include-fixed" ignoring nonexistent directory "/usr/lib/gcc/x86_64-pc-linux-gnu/14/../../../../x86_64-pc-linux-gnu/include" #include "..." search starts here: #include <...> search starts here: /usr/lib/gcc/x86_64-pc-linux-gnu/14/include/g++-v14 /usr/lib/gcc/x86_64-pc-linux-gnu/14/include/g++-v14/x86_64-pc-linux-gnu /usr/lib/gcc/x86_64-pc-linux-gnu/14/include/g++-v14/backward /usr/lib/gcc/x86_64-pc-linux-gnu/14/include /usr/include End of search list. Compiler executable checksum: b63801264392b36e05179a0f762d8604 during GIMPLE pass: waccess ./ice-14.cpp: In member function 'void Outer<T>::method() requires staticTemplatedConstant<U> [with U = void; T = void]': ./ice-14.cpp:12:29: internal compiler error: Segmentation fault 12 | template <class U> void method() requires staticTemplatedConstant<U> | ^~~~~~ 0x55af8dca912c crash_signal /usr/src/debug/sys-devel/gcc-14.1.1_p20240518/gcc-14-20240518/gcc/toplev.cc:319 0x55af8dbea562 new_delete_mismatch_p /usr/src/debug/sys-devel/gcc-14.1.1_p20240518/gcc-14-20240518/gcc/gimple-ssa-warn-access.cc:1627 0x55af8d7e15d5 new_delete_mismatch_p /usr/src/debug/sys-devel/gcc-14.1.1_p20240518/gcc-14-20240518/gcc/gimple-ssa-warn-access.cc:1765 0x55af8d7e15d5 matching_alloc_calls_p /usr/src/debug/sys-devel/gcc-14.1.1_p20240518/gcc-14-20240518/gcc/gimple-ssa-warn-access.cc:1788 0x55af8e48fcdb matching_alloc_calls_p /usr/src/debug/sys-devel/gcc-14.1.1_p20240518/gcc-14-20240518/gcc/gimple-ssa-warn-access.cc:1998 0x55af8e48fcdb maybe_check_dealloc_call /usr/src/debug/sys-devel/gcc-14.1.1_p20240518/gcc-14-20240518/gcc/gimple-ssa-warn-access.cc:3757 0x55af8e48fcdb check_call /usr/src/debug/sys-devel/gcc-14.1.1_p20240518/gcc-14-20240518/gcc/gimple-ssa-warn-access.cc:4367 0x55af8e48fcdb check_block /usr/src/debug/sys-devel/gcc-14.1.1_p20240518/gcc-14-20240518/gcc/gimple-ssa-warn-access.cc:4444 0x55af8e48fcdb execute /usr/src/debug/sys-devel/gcc-14.1.1_p20240518/gcc-14-20240518/gcc/gimple-ssa-warn-access.cc:4779 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.