https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78365
kugan at gcc dot gnu.org changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |kugan at gcc dot gnu.org --- Comment #3 from kugan at gcc dot gnu.org --- Reduces testcase looks invalid: a, b, c; char d; static fn1(int *, int); fn1(cc, yh) int *cc; char yh; { char y; a = fn2(c - b + 1); for (; y <= yh; y++) ; } fn3() { fn1(fn3, 1); fn1(fn3, d - 1); } static fn1(int *, int); is the prototype and then we have fn1(cc, yh) int *cc; char yh; second argument is now char. I think FE should reject this.