[Top][All Lists]

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

Re: [CFT] sed prerelease on alpha.gnu.org

From: Matthew Woehlke
Subject: Re: [CFT] sed prerelease on alpha.gnu.org
Date: Wed, 29 Apr 2009 18:44:54 -0500
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv: Gecko/20090320 Fedora/ Thunderbird/ Mnenhy/

Eric Blake wrote:
According to Matthew Woehlke on 4/29/2009 1:07 PM:
FYI: adding the autoconf check to turn on c99 mode is broken;
autoconf  picks up -qlanglvl=ansi from the ANSI c89 check, and
doesn't know how to  try alternatives (this affects other GNU
packages as well, most notably  coreutils).
Can you reformulate this paragraph so that it can serve as a bug report
against Autoconf and/or other affected GNU packages?  IOW: what exactly
is broken, using AC_PROG_CC_C99 after AC_PROG_CC_C89?
I've no idea. I just know that at least coreutils does it in such a way
that configure doesn't figure out to use either of
-qlanglvl={std,ext}c99. And that I've seen the same thing in other

It may also have something to do with this statement of yours:

However, it seems said compiler also has no stdbool.h, and so the (broken) 
replacement header is still used, ergo the original problem is not solved.

C99 requires stdbool.h, but there have been other reports of people where
this one aspect of C99 is missing, and as a result, the entire
AC_PROG_CC_C99 fails to enable the remaining supported C99 features.
Maybe some improvements can be made in that area.

Are you sure? If I do CC='cc -qlanglvl=stdc99':

checking for cc -qlanglvl=stdc99 option to accept ISO C89... none needed
checking for cc -qlanglvl=stdc99 option to accept ISO C99... none needed

...so according to the output of configure, at least, this is being accepted as sufficient.

Without that:

checking for cc option to accept ISO C89... -qlanglvl=ansi
checking for cc -qlanglvl=ansi option to accept ISO C99... unsupported

...which seems to be a bug.

(Above tests done with configure from coreutils 7.2 release tarball.)

Also a question - does your compiler support _Bool, even though it lacks

Dunno. It accepted this program:
int main() {
  _Bool foo;
  return 0;

(Further, it accepts it with -qlanglvl=stdc99, but with -qlanglvl=ansi, it errors with "line 2.1: 1506-045 (S) Undeclared identifier _Bool".)

Anything else in particular you want me to check for?

(I sort-of mentioned this already, but the replacement stdbool.h doesn't try to use the built-in _Bool when trying to build sed with CC='cc -qlanglvl=stdc99'. I guess it should?)

Please do not quote my e-mail address unobfuscated in message bodies.
This is not a sig. I am too lazy to steal one, perhaps you could loan me yours? -- Unknown

reply via email to

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