https://gcc.gnu.org/bugzilla/show_bug.cgi?id=121754
--- Comment #3 from Dhruv Chawla <dhruvc at nvidia dot com> ---
(In reply to Andrew Pinski from comment #2)
> (In reply to Dhruv Chawla from comment #1)
> > Removing ice-on-valid-code, this is occurring because b is uninitialized.
>
> undefined code is still valid code.
Yeah, my bad, it seems to fail for unknown initializations:
===
float a;
int external ();
float
fn1 (int *)
{
for (int b = external (); b; b++)
{
a = 01.;
for (int c = 0; c < 2000; c++)
a *= 0.99;
}
}
void fn2 (float (int *));
void
main ()
{
fn2 (fn1);
}
===
also crashes.