https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107755
Pokechu22 <pokechu022+gccbugzilla at gmail dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- Known to fail| |10.3.0, 12.2.0, 4.8.1, | |9.4.0 Known to work| |4.7.4 --- Comment #1 from Pokechu22 <pokechu022+gccbugzilla at gmail dot com> --- Here are a few cases that would be useful to include in a test: ``` return (!false && (false ? a : b)); return (!true && (false ? a : b)); return (!false || (false ? a : b)); return (!true || (false ? a : b)); return (x && (y ? a : b)); return (x || (y ? a : b)); ``` As an aside, `(false | (false ? a : b))` (where a is bool and b is Foo) used to cause an ICE (confirmed in 4.7.4, 4.8.1, and 5.5). This was fixed in or before 6.1. I can't find a bug report corresponding to that issue either, but it probably should be verified that that doesn't regress either.