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

            Bug ID: 83044
           Summary: ice in contains_struct_check
           Product: gcc
           Version: 8.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c
          Assignee: unassigned at gcc dot gnu.org
          Reporter: dcb314 at hotmail dot com
  Target Milestone: ---

For the following C code, compiled by recent gcc trunk and flags
-std=gnu89 -Wall -O2 -c

struct a {
  int aeadctx[0]
};
struct b {
  struct a c[0]
} d() {
  struct b a;
  e(a.c->aeadctx);
}

I get

during GIMPLE pass: vrp
bug397-min.c:6:3: internal compiler error: Segmentation fault
 } d() {
   ^
0xd3c34f crash_signal
    ../../trunk/gcc/toplev.c:325
0x730c44 contains_struct_check(tree_node const*, tree_node_structure_enum, char
const*, int, char const*)
    ../../trunk/gcc/tree.h:3459
0x730c44 wi::to_wide(tree_node const*)
    ../../trunk/gcc/tree.h:5247
0xf7c67d vrp_prop::check_array_ref(unsigned int, tree_node*, bool)
    ../../trunk/gcc/tree-vrp.c:4811

The bug seems to occur between revisions 254826 and 254877

Reply via email to