[Bug c++/81659] New: ICE in verify_dominators, at dominance.c:1184

marxin at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Wed Aug 2 07:04:00 GMT 2017


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

            Bug ID: 81659
           Summary: ICE in verify_dominators, at dominance.c:1184
           Product: gcc
           Version: 7.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: marxin at gcc dot gnu.org
  Target Milestone: ---

Following test-case ICEs starting from 4.7.0:

$ cat exception.cpp
void
a (int b)
{
  if (b)
    throw;
  try
    {
      a (3);
    }
  catch (int)
    {
    }
  catch (int)
    {
    }
}

$ g++ exception.cpp -O2 -c
exception.cpp: In function ‘void a(int)’:
exception.cpp:2:1: error: dominator of 5 should be 8, not 6
 a (int b)
 ^
during GIMPLE pass: ehdisp
exception.cpp:2:1: internal compiler error: in verify_dominators, at
dominance.c:1184
0x9c0158 verify_dominators(cdi_direction)
        ../../gcc/dominance.c:1184
0x9c0397 checking_verify_dominators
        ../../gcc/dominance.h:76
0x9c0397 calculate_dominance_info(cdi_direction)
        ../../gcc/dominance.c:746
0xe2a5f2 update_ssa(unsigned int)
        ../../gcc/tree-into-ssa.c:3328
0xcb2987 execute_function_todo
        ../../gcc/passes.c:1958
0xcb38f2 execute_todo
        ../../gcc/passes.c:2044

Adding -finline-functions it also ICEs with 4.5.0+.


More information about the Gcc-bugs mailing list