For the record: cat > less.c <<'END' /* Valid C but deliberately invalid C++ */ int main (void) { int new = 0; return new; } END
$> g++ less.c less.c: In function ‘int main()’: less.c:4:7: error: expected unqualified-id before ‘new’ 4 | int new = 0; | ^~~ less.c:5:13: error: expected type-specifier before ‘;’ token 5 | return new; | ^ On Tue, Dec 13, 2022 at 7:35 AM Frederic Berat <fbe...@redhat.com> wrote: > > On Mon, Dec 12, 2022 at 9:15 PM Zack Weinberg <z...@owlfolio.org> wrote: > > > > On 2022-12-12 2:05 AM, Frederic Berat wrote: > > > This is related to an effort to prepare Automake for future GCC/Clang > > > versions which set c99 as default standard to be used. > > > Not properly declaring main as "int main(...)" is rejected since c99. > > ... > > > /* Valid C but deliberately invalid C++ */ > > > -main () > > > +int main (void) > > > > Note the comment. Is this test program still invalid C++ after your change? > > I assumed yes, since "new" should be a standard symbol, but I actually > forgot to double check. > > > > > zw > > > > > > > >