[bug#59992] [PATCH 1/2] tests: Fix 'type defaults' error in link_cond due to main not being properly declared

Frederic Berat <[email protected]>
Newsgroups gmane.comp.sysutils.automake.patches
Message-ID <CAObJKZpWjOkYpDaQpFT0+FyHRc9MLAVRPpYp0PdsvFNy9cR-FA@mail.gmail.com>
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 <[email protected]> wrote:
>
> On Mon, Dec 12, 2022 at 9:15 PM Zack Weinberg <[email protected]> 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
> >
> >
> >
> >
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.