https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80743
--- Comment #1 from David Binderman <dcb314 at hotmail dot com> --- Reduced source code is a, b, c; e(unsigned long f) { if (!f) return 0; if (f <= 3) return; if (f <= 6) return; if (f <= 32) return; if (f <= 64) return; if (f <= 128) return; if (f <= 256) return 8; } inline g(unsigned long f) { if (f > 1 << 12) return; int d = e(f); h(d); } i(unsigned long f, int p2) { j(a, c, b, 0); if (p2) g(f); } k() { i(k, 0); }