On Wed, Mar 04, 2020 at 02:06:58PM -0700, Martin Sebor wrote: > +#ifndef alloca > +// Simulate a definition in a system header. > +# 13 "/usr/include/alloca.h" > +# define alloca(n) __builtin_alloca (n) > +# 15 "Walloca-larger-than-3.c" > +#endif
This isn't correct simulation of definition in a system header. Comment out the #include <alloca.h> to verify. The third line should be # 1 "/usr/include/alloca.h" 1 3 (or 1 3 4 at the end) and fifth line should be # 15 "Walloca-larger-than-3.c" 2 1 means entering a header, 3 means system header (4 is about implicit extern "C") and 2 means returning back to previous source. Jakub