https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117378

            Bug ID: 117378
           Summary: [15 Regression] ICE on waybar-0.11.0: verify_gimple
                    failed
           Product: gcc
           Version: 15.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: middle-end
          Assignee: unassigned at gcc dot gnu.org
          Reporter: slyfox at gcc dot gnu.org
  Target Milestone: ---

Created attachment 59508
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=59508&action=edit
power_profiles_daemon.cpp.cpp

Noticed an ICE on today's gcc-master from r15-4789-g5e26a340b228ca. Did not
bisect.

Self-contained example is a bit large: 7KB, attached.

Crashes as:

$ gcc/xg++ -Bgcc -Wall -std=c++20  -c
~/dev/bugs/gcc-15-waybar-ICE/power_profiles_daemon.cpp.cpp -O2
/home/slyfox/dev/bugs/gcc-15-waybar-ICE/power_profiles_daemon.cpp.cpp: In
instantiation of ‘static void Variant<tuple<Types ...> >::create() [with Types
= {int, int}]’:
/home/slyfox/dev/bugs/gcc-15-waybar-ICE/power_profiles_daemon.cpp.cpp:185:39:  
required from here
  185 |   Variant< tuple< int, int > >::create();
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
/home/slyfox/dev/bugs/gcc-15-waybar-ICE/power_profiles_daemon.cpp.cpp:181:27:
warning: comparison of integer expressions of different signedness: ‘size_type’
{aka ‘long int’} and ‘long unsigned int’ [-Wsign-compare]
  181 |   for (size_type i = 0; i < variants.size(); i++)
      |                         ~~^~~~~~~~~~~~~~~~~
/home/slyfox/dev/bugs/gcc-15-waybar-ICE/power_profiles_daemon.cpp.cpp: In
static member function ‘static void Variant<tuple<Types ...> >::create() [with
Types = {int, int}]’:
/home/slyfox/dev/bugs/gcc-15-waybar-ICE/power_profiles_daemon.cpp.cpp:177:34:
error: type mismatch in binary expression
  177 | template < class... Types > void Variant< tuple< Types... > >::create()
{
      |                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
sizetype

long int

sizetype

_37 = _51 - _35;
during GIMPLE pass: ldist
/home/slyfox/dev/bugs/gcc-15-waybar-ICE/power_profiles_daemon.cpp.cpp:177:34:
internal compiler error: verify_gimple failed
0x284b751 internal_error(char const*, ...)
        /home/slyfox/dev/git/gcc/gcc/diagnostic-global-context.cc:518
0x12bba86 verify_gimple_in_cfg(function*, bool, bool)
        /home/slyfox/dev/git/gcc/gcc/tree-cfg.cc:5682
0x112caaa execute_function_todo
        /home/slyfox/dev/git/gcc/gcc/passes.cc:2102
0x112cc18 do_per_function
        /home/slyfox/dev/git/gcc/gcc/passes.cc:1701
0x112cd26 execute_todo
        /home/slyfox/dev/git/gcc/gcc/passes.cc:2156
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.

$ gcc/xg++ -Bgcc -v
Reading specs from gcc/specs
COLLECT_GCC=gcc/xg++
COLLECT_LTO_WRAPPER=gcc/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /home/slyfox/dev/git/gcc/configure --disable-multilib
--disable-bootstrap --disable-lto --disable-libsanitizer
--disable-libstdcxx-pch --enable-languages=c,c++ --disable-libgomp
--disable-libquadmath --disable-libvtv CFLAGS='-O1 -ggdb3' CXXFLAGS='-O1
-ggdb3' LDFLAGS='-O1 -ggdb3'
Thread model: posix
Supported LTO compression algorithms: zlib
gcc version 15.0.0 20241030 (experimental) (GCC)

Reply via email to