https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108166
--- Comment #3 from Jakub Jelinek <jakub at gcc dot gnu.org> --- Testcase without includes: bool a, b; int d, c; const int & foo (const int &f, const int &g) { return !f ? f : g; } __attribute__((noipa)) void bar (int) { } int main () { c = foo (b, 0) > ((b ? d : b) ?: 8); a = b ? d : b; bar (a); if (a != 0) __builtin_abort (); }