bug-gnu-utils
[Top][All Lists]
Advanced

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

Re: GNU tar 1.13.25 configure bugs vs. gcc and AST library and headers


From: Paul Eggert
Subject: Re: GNU tar 1.13.25 configure bugs vs. gcc and AST library and headers
Date: Sun, 14 Jul 2002 02:07:15 -0700 (PDT)

> From: Bruce Lilly <address@hidden>
> Date: Sat, 13 Jul 2002 12:32:39 -0400
> 
> A typical config.log entry for the failure is:
> 
> configure:6385: checking for pathconf
> configure:6422: gcc -o conftest -g -O2 -I/usr/include/ast -include 
> /usr/include/ast/ast.h -last conftest.c  >&5
> configure:6401: conflicting types for `_ast_pathconf'
> /usr/include/ast/ast_std.h:763: previous declaration of `_ast_pathconf'
> configure:6425: $? = 1
> configure: failed program was:
> #line 6391 "configure"
> #include "confdefs.h"
> /* System header to define __stub macros and hopefully few prototypes,
>      which can conflict with char pathconf (); below.  */
> #include <assert.h>
> /* Override any gcc2 internal prototype to avoid an error.  */
> #ifdef __cplusplus
> extern "C"
> #endif
> /* We use char because int might match the return type of a gcc2
>     builtin and then its argument prototype would still apply.  */
> char pathconf ();
> char (*f) ();
> 
> int
> main ()
> {
> /* The GNU C library defines this for functions which it implements
>      to always fail with ENOSYS.  Some functions are actually named
>      something starting with __ and the normal name is an alias.  */
> #if defined (__stub_pathconf) || defined (__stub___pathconf)
> choke me
> #else
> f = pathconf;
> #endif
> 
>    ;
>    return 0;
> }
> configure:6441: result: no

This is a compiler bug.  The C Standard says that the user should be
able to declare "pathconf" to return any type, since "pathconf" is not
a reserved name and no nonstandard files have been included.


> Clearly this is a configure (autoconf) bug.

Yes.  I'll try to see if I can get Autoconf fixed so that it can work
around this particular compiler bug.



reply via email to

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