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

            Bug ID: 87301
           Summary: [9 Regression] ICE: verify_gimple failed (error:
                    statement marked for throw, but doesn't)
           Product: gcc
           Version: 9.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: tree-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: asolokha at gmx dot com
  Target Milestone: ---

gcc-9.0.0-alpha20180909 snapshot (r264185) ICEs when compiling the following
snippet w/ -O2 (-O3, -Ofast, -Os) -fexceptions -fnon-call-exceptions
-fno-tree-vrp:

void
bl (int *be)
{
  int lo;
  {
    int **ny;

    if (*be == 0)
      {
        int ***k8 = &ny;
        int uj = &lo;

        for (;;)
          if (***k8 == 0)
            {
              uj = !!(1 / 0) ? !(lo = 0) : 0;
              (void) uj;

              if (*ny == 0)
                for (;;)
                  if (***k8 == 0)
                    {
                    }

              for (lo = 0; lo < 2; ++lo)
                {
                }
            }
      }
  }
}

% gcc-9.0.0-alpha20180909 -O2 -fexceptions -fnon-call-exceptions -fno-tree-vrp
-w -c cuhhf6tv.c
cuhhf6tv.c: In function 'bl':
cuhhf6tv.c:2:1: error: statement marked for throw, but doesn't
2 | bl (int *be)
  | ^~
_13 = _9;
during GIMPLE pass: cunrolli
cuhhf6tv.c:2:1: internal compiler error: verify_gimple failed
0xcff91d verify_gimple_in_cfg(function*, bool)
       
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20180909/work/gcc-9-20180909/gcc/tree-cfg.c:5422
0xbd715f execute_function_todo
       
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20180909/work/gcc-9-20180909/gcc/passes.c:1943
0xbd804e execute_todo
       
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20180909/work/gcc-9-20180909/gcc/passes.c:1997

Reply via email to