http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54409
Marek Polacek <polacek at redhat dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |polacek at redhat dot com --- Comment #5 from Marek Polacek <polacek at redhat dot com> 2012-08-29 17:07:04 UTC --- More reduced. Reproducible with -Os and -O1. int b; struct S { char *p; struct { } s; int a; }; static _Bool fn2 (int *p1) { if (b) { struct S *c = (struct S *) &p1; return c->a; } } _Bool fn3 (struct S *p1) { if (fn2 ((int *) &p1->s)) return 0; }