autoconf
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: AC_LANG_PROGRAM(C): function 'main' without prototype


From: Ralf Wildenhues
Subject: Re: AC_LANG_PROGRAM(C): function 'main' without prototype
Date: Wed, 25 Jun 2008 19:49:09 +0200
User-agent: Mutt/1.5.17+20080114 (2008-01-14)

* Stepan Kasal wrote on Wed, Jun 25, 2008 at 06:26:56PM CEST:
> On Tue, Jun 24, 2008 at 08:14:44PM +0200, Nico R. wrote:
> > AC_LANG_PROGRAM(C) in c.m4 from autoconf:
> > Shouldn’t the line
> >   main ()
> > be
> >   main (void)
> > instead?
> 
> I admit I'm not sure about this.  The change would immediately break
> K&R compilers but they are no longer in the target set anyway.
> Let's wait for comments from those who know better. ;-)

Hehe, I don't know better, but I'll take it as "those who think they
should post their opinion anyway".  ;->

IIRC, so far Autoconf still mostly supports pre-C89 compilers, even
if maybe not fully.  This would be a definite step away from that.
(Stating this without having a strong opinion on it; I simply don't
know how relevant that is to users.)

> > If CFLAGS contains '-Werror’
> 
> Well, the configure collects literally bits of information about the
> platform.  The bit is 0 or 1, depending on whether the compilation
> (link) failed or not.  Using -Werror may skew some results.

Exactly.  We cannot get all macros warning-free, even when limiting
ourselves to GCC's warnings.  Some of Autoconf's macros necessarily
rely on dubious constructs.

> Generally, while -Werror during "make" makes you more safe, -Werror
> at configure time exposes you to extra risk.
> 
> Perhaps we should do something about it.  Perhaps ./configure should
> detect -Werror in CFLAGS (and other *FLAGS) and bail out with an
> error message.

I have already forgotten again whether the proposed AC_*_WERROR
improvements also addressed this case: that we have a macro for
which we would like to temporarily turn off -Werror, iff it had
been passed.  Even if we had such functionality, though, I'm not
sure we would want to use it in the above case.

Cheers,
Ralf




reply via email to

[Prev in Thread] Current Thread [Next in Thread]