https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70617
--- Comment #6 from Richard Biener <rguenth at gcc dot gnu.org> --- But it ICEs differently, so the reduction is bogus: > ./cc1plus -quiet t.c -m32 -w t.c:2:23: error: field ‘TYPES’ has incomplete type ‘UINT’ typedef struct { UINT TYPES } eType; ^ t.c:1:8: note: forward declaration of ‘struct UINT’ struct UINT; ^ t.c:2:23: error: expected ‘;’ at end of member declaration typedef struct { UINT TYPES } eType; ^ t.c:3:10: error: ISO C++ forbids declaration of ‘fn1’ with no type [-fpermissive] fn1(eType) { ^ t.c: In function ‘int fn1(eType)’: t.c:3:12: error: expected ‘}’ at end of input fn1(eType) { ^ t.c:3:1: internal compiler error: Segmentation fault fn1(eType) { ^ 0xfa527c crash_signal /space/rguenther/src/svn/gcc-5-branch/gcc/toplev.c:383 0x7056f3 tree_int_cst_elt_check(tree_node*, int, char const*, int, char const*) /space/rguenther/src/svn/gcc-5-branch/gcc/tree.h:3050 0x1082419 chkp_find_bound_slots_1(tree_node const*, bitmap_head*, long) /space/rguenther/src/svn/gcc-5-branch/gcc/tree-chkp.c:1699 0x1082708 chkp_find_bound_slots(tree_node const*, bitmap_head*) /space/rguenther/src/svn/gcc-5-branch/gcc/tree-chkp.c:1730 0x107fe9a chkp_type_bounds_count(tree_node const*)