This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: BUG!! gcc-2.95.3 (`__builtin_va_alist' undeclared in snprintf()) on Solaris-2.5.1


Here's the same output using 2.95.2, which I compiled exactly the same as
2.95.3:

gcc -v -H -c -I. -I../dist/../include -I../dist/../include_auto -D_REENTRANT  -O
6 ../dist/../clib/snprintf.c
Reading specs from /usr/local/lib/gcc-lib/sparc-sun-solaris2.5.1/2.95.2/specs
gcc version 2.95.2 19991024 (release)
 /usr/local/lib/gcc-lib/sparc-sun-solaris2.5.1/2.95.2/cpp -lang-c -v -I. -I../di
st/../include -I../dist/../include_auto -D__GNUC__=2 -D__GNUC_MINOR__=95 -Dsparc
 -Dsun -Dunix -D__svr4__ -D__SVR4 -D__sparc__ -D__sun__ -D__unix__ -D__svr4__ -D
__SVR4 -D__sparc -D__sun -D__unix -Asystem(unix) -Asystem(svr4) -D__OPTIMIZE__ -
H -D__GCC_NEW_VARARGS__ -Acpu(sparc) -Amachine(sparc) -D_REENTRANT ../dist/../cl
ib/snprintf.c /var/tmp/ccAC9M4e.i
GNU CPP version 2.95.2 19991024 (release) (sparc)
#include "..." search starts here:
#include <...> search starts here:
 .
 ../dist/../include
 ../dist/../include_auto
 /usr/local/include
 /usr/local/lib/gcc-lib/sparc-sun-solaris2.5.1/2.95.2/../../../../sparc-sun-sola
ris2.5.1/include
 /usr/local/lib/gcc-lib/sparc-sun-solaris2.5.1/2.95.2/include
 /usr/include
End of search list.
The following default directories have been omitted from the search path:
 /usr/local/lib/gcc-lib/sparc-sun-solaris2.5.1/2.95.2/../../../../include/g++-3
End of omitted list.
db_config.h
/usr/include/sys/types.h
 /usr/include/sys/feature_tests.h
 /usr/include/sys/isa_defs.h
 /usr/include/sys/machtypes.h
 /usr/include/sys/select.h
  /usr/include/sys/time.h
   /usr/include/sys/types.h
   /usr/include/time.h
    /usr/include/sys/time.h
    /usr/include/sys/siginfo.h
     /usr/include/sys/machsig.h
     /usr/include/sys/time.h
/usr/include/stdio.h
 /usr/include/sys/va_list.h
db_int.h
 db.h
/usr/local/lib/gcc-lib/sparc-sun-solaris2.5.1/2.95.2/include/stdarg.h
  /usr/local/lib/gcc-lib/sparc-sun-solaris2.5.1/2.95.2/include/va-sparc.h
 /usr/include/errno.h
  /usr/include/sys/errno.h
 ../dist/../include/queue.h
 ../dist/../include/shqueue.h
 ../dist/../include/debug.h
 ../dist/../include/mutex.h
  /usr/include/thread.h
   /usr/include/sys/signal.h
    /usr/include/sys/unistd.h
   /usr/include/synch.h
    /usr/include/sys/machlock.h
    /usr/include/sys/synch.h
 ../dist/../include/region.h
 ../dist/../include_auto/mutex_ext.h
 ../dist/../include_auto/env_ext.h
 ../dist/../include/os.h
 ../dist/../include_auto/os_ext.h
 ../dist/../include_auto/common_ext.h
 /usr/local/lib/gcc-lib/sparc-sun-solaris2.5.1/2.95.2/cc1 /var/tmp/ccAC9M4e.i -q
uiet -dumpbase snprintf.c -O6 -version -o /var/tmp/ccxZjlLi.s
GNU C version 2.95.2 19991024 (release) (sparc-sun-solaris2.5.1) compiled by GNU
 C version 2.95.2 19991024 (release).
In file included from ../dist/../clib/snprintf.c:15:
/usr/include/sys/types.h:34: warning: empty declaration
/usr/include/sys/types.h:170: warning: empty declaration
/usr/include/sys/types.h:181: warning: empty declaration
/usr/include/sys/types.h:185: warning: empty declaration
 /usr/ccs/bin/as -V -Qy -s -o snprintf.o /var/tmp/ccxZjlLi.s
/usr/ccs/bin/as: WorkShop Compilers 4.2 dev 13 May 1996

The key 2 lines is:

/usr/local/lib/gcc-lib/sparc-sun-solaris2.5.1/2.95.2/include/stdarg.h
  /usr/local/lib/gcc-lib/sparc-sun-solaris2.5.1/2.95.2/include/va-sparc.h

which didn't produce the same output from 2.95.3.  It should be
2.95.3/include/stdarg.h/va-sparc.h, but no go.  So it looks as if
fixincludes broke during the compilation, or there's a serious bug.

What can change between 2.95.2 and 2.95.3 w/ fixincludes that can
cause this behavior to occur?

Until a fix is done I have no choice but to revert back to 2.95.2.

- Wally Winzer Jr.

"Auteria Wally Winzer Jr." wrote:

> Is it possible gcc-2.95.3 is broken? It seems so.
> Here's output using the "-H" option to gcc
> (NOTE: this problem doesn't exist w/ 2.95.2):
>
> gcc -H -c -I. -I../dist/../include -I../dist/../include_auto -D_REENTRANT  -O6
> ../dist/../clib/snprintf.c
> db_config.h
> /usr/include/sys/types.h
>  /usr/include/sys/feature_tests.h
>  /usr/include/sys/isa_defs.h
>  /usr/include/sys/machtypes.h
>  /usr/include/sys/select.h
>   /usr/include/sys/time.h
>    /usr/include/sys/types.h
>    /usr/include/time.h
>     /usr/include/sys/time.h
>     /usr/include/sys/siginfo.h
>      /usr/include/sys/machsig.h
>      /usr/include/sys/time.h
> /usr/include/stdio.h
>  /usr/include/sys/va_list.h
> db_int.h
>  db.h
>  /usr/include/stdarg.h
>  /usr/include/errno.h
>   /usr/include/sys/errno.h
>  ../dist/../include/queue.h
>  ../dist/../include/shqueue.h
>  ../dist/../include/debug.h
>  ../dist/../include/mutex.h
>   /usr/include/thread.h
>    /usr/include/sys/signal.h
>     /usr/include/sys/unistd.h
>    /usr/include/synch.h
>     /usr/include/sys/machlock.h
>     /usr/include/sys/synch.h
>  ../dist/../include/region.h
>  ../dist/../include_auto/mutex_ext.h
>  ../dist/../include_auto/env_ext.h
>  ../dist/../include/os.h
>  ../dist/../include_auto/os_ext.h
>  ../dist/../include_auto/common_ext.h
> In file included from ../dist/../clib/snprintf.c:15:
> /usr/include/sys/types.h:34: warning: empty declaration
> /usr/include/sys/types.h:170: warning: empty declaration
> /usr/include/sys/types.h:181: warning: empty declaration
> /usr/include/sys/types.h:185: warning: empty declaration
> ../dist/../clib/snprintf.c: In function `__db_Csnprintf':
> ../dist/../clib/snprintf.c:47: `__builtin_va_alist' undeclared (first use in this function)
> ../dist/../clib/snprintf.c:47: (Each undeclared identifier is reported only once
> ../dist/../clib/snprintf.c:47: for each function it appears in.)
> make: *** [snprintf.o] Error 1
>
> Maybe during the compilation fixincludes failed.  Is there another way of
> fixing the includes during compilation of 2.95.3?
>
> - Wally Winzer Jr.
>
> Martin Sebor wrote:
>
> > Carlo Wood wrote:
> > >
> > > On Sat, May 26, 2001 at 02:40:46AM -0700, Auteria Wally Winzer Jr. wrote:
> > > > I finally got gcc-2.95.3 compiled on Solaris-2.5.1 (fully-patched).
> > > > When trying to compile sendmail and BerkeleyDB I get errors from
> > > > snprintf().  Here's the errors:
> > > >
> > > > sendmail-8.11.3:
> > > >
> > > > gcc -O6 -I. -I../../sendmail   -I../../include -I/usr/local/include -DNEWDB
> > > > -DNIS -DNISPLUS -DMAP_REGEX -DAUTO_NIS_ALIASES -DTCPWRAPPERS -DSOLARIS=20501
> > > > -DNOT_SENDMAIL      -c -o snprintf.o snprintf.c
> > > > snprintf.c: In function `snprintf':
> > > > snprintf.c:70: `__builtin_va_alist' undeclared (first use in this function)
> > >
> > > Is sendmail accidently including varargs.h?  Or is it using va_list without
> > > including <stdarg.h>?  The best way to check this is by editting those files
> > > (as root) and adding a line   #warning "We get here!"   to them (or #error
> > > in the case of <varargs.h> to the top.  Be sure to use the correct header
> > > files, they should be in a directory like <prefix>/lib/gcc-lib/<triplet>/2.95.3/include/
> >
> > That's hardly the best way if you don't have root privileges or if you
> > are on a multiuser system. A better approach would be to use -c -H and
> > grep the result for the files you're looking for. -E is also an option
> > if you're using a compiler other than gcc.
> >
> > Regards
> > Martin

S/MIME Cryptographic Signature


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]