https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114068
--- Comment #10 from Sam James <sjames at gcc dot gnu.org> --- last one: ``` struct c { int b; int *d(int e) { return &b + e; } }; struct g { c base; int f; void j() { if (f) __builtin_unreachable(); } int &p(int e) { if (e > 1) __builtin_unreachable(); return *base.d(e); } } l; struct h { g i; void q() { i.j(); } } k; int m; void n() { h a = k; for (int o = m; o; ++o) { a.q(); l.p(o) = 1; } } ```