https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81510
Bug ID: 81510 Summary: ice in operator[], at vec.h:749 Product: gcc Version: 7.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c Assignee: unassigned at gcc dot gnu.org Reporter: dcb314 at hotmail dot com Target Milestone: --- The following C code, when compiled by recent gcc trunk and flag -O3, does this: /home/dcb/creduce/dcbTest/bug371.c:7:1: internal compiler error: in operator[], at vec.h:749 e() { ^ 0xef8ea7 vec<_stmt_vec_info*, va_heap, vl_embed>::operator[](unsigned int) ../../trunk/gcc/vec.h:749 0xef8ea7 vec<_stmt_vec_info*, va_heap, vl_ptr>::operator[](unsigned int) ../../trunk/gcc/vec.h:1234 0xef8ea7 vinfo_for_stmt ../../trunk/gcc/tree-vectorizer.h:800 0xefeb5b vinfo_for_stmt ../../trunk/gcc/tree-vect-loop.c:3135 C code is typedef d; typedef f; typedef long h; a; b; c; e() { f *g; h i; for (;;) if (g) for (; b; b++) { g = c; if (a &= c) { d *j = &b; h k; for (; i; i++) { *g ?: (*j = k); g = &a; } for (; i <= 3; i++) ; } } } Problem seems to exist between revisions 250361 and 250395.