http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59338
Bug ID: 59338 Summary: error: position plus size exceeds size of referenced object in BIT_FIELD_REF Product: gcc Version: 4.9.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: middle-end Assignee: unassigned at gcc dot gnu.org Reporter: jan.sm...@alcatel-lucent.com minimal.i: In function 'test': minimal.i:20:6: error: position plus size exceeds size of referenced object in BIT_FIELD_REF void test(void) ^ BIT_FIELD_REF <*qResp, 8, 32> minimal.i:23:28: note: in statement if (qResp->u.l[0].More == 0) ^ D.1802 = BIT_FIELD_REF <*qResp, 8, 32>; minimal.i:20:6: internal compiler error: verify_gimple failed void test(void) ^ typedef enum { XYZZY, } enumType; typedef struct { unsigned char More : 1; } tResp; typedef struct { enumType QueryType; union { tResp l[0]; } u; } tQResp; void test(void) { tQResp *qResp = (0); if (qResp->u.l[0].More == 0) return; }