https://gcc.gnu.org/bugzilla/show_bug.cgi?id=121907
--- Comment #3 from Alejandro Colomar <foss+...@alejandro-colomar.es> --- (In reply to Alejandro Colomar from comment #2) > Another possibility would be to remove auto-as-static without replacement. I meant auto-as-storage-duration. > Declaring nested functions is dangerous. What's the point of being able to > declare them if it's not yet valid to call them? > > > alx@debian:~/tmp$ cat nested.c | nl -ba > 1 int > 2 main(int argc, char *[]) > 3 { > 4 int n; > 5 auto int f(void); > 6 > 7 n = f(); > 8 > 9 int v[argc]; > 10 > 11 auto int f(void) > 12 { > 13 return sizeof(v); > 14 } > 15 > 16 return n; > 17 } > alx@debian:~/tmp$ gcc -Wall -Wextra nested.c > alx@debian:~/tmp$ ./a.out 1 1 1 1; echo $? > 0