------- Comment #24 from eesrjhc at bath dot ac dot uk  2007-03-19 09:30 -------
(In reply to comment #20)
> (In reply to comment #19)
> ...
> > this isn't enough even with building with this brand new
> > gcc-4.3.0_alpha20070309.
> > I'll repeat it with include of proper stdio.h, which looks in gentoo 
> > multilib
> > like this
> > 
> > jama gcc # cat /usr/include/stdio.h
> 
> Ok, thanks. But then, an important question is: which (empty? not including 
> any
> declaration of the expected facilities?!? What header is that?) stdio.h is
> instead included at build time if you don't specify explicitely the path? You
> should try to figure out that, whether on your system there are around (in the
> build directory or elsewhere) stdio.h which in fact are not the correct one.
> 
> In order to do that, you could proceed as follows: go the build directory of
> the library and invoke by hand the same line which is failing the build of
> compatibility.cc, but running only the preprocessor, with -E. You save its
> output, it should tell us what a heck of wrong stdio.h is included.
> 

Incidentally, I have (by using a binary search, bootstapping into an empty
build  directory each time) found that revision 121025 builds OK, while
revision 121027 fails with this problem.

Doing the suggestion above, this is what I get:

[EMAIL PROTECTED] $ /MHz/roger/src/gcc-svn-121027/build-121027/./gcc/xgcc -sh
ared-libgcc -B/MHz/roger/src/gcc-svn-121027/build-121027/./gcc -nostdinc++
-L/MHz/roger/src/gcc-svn-121027/build-121027/x86_64-unknown-linux-gnu/libstdc++-v3/src
-L/MHz/roger/src/gcc-svn-121027/build-121027/x86_64-unknown-linux-gnu/libstdc++-v3/src/.libs
-B/usr/local/gcc-svn/x86_64-unknown-linux-gnu/bin/
-B/usr/local/gcc-svn/x86_64-unknown-linux-gnu/lib/ -isystem
/usr/local/gcc-svn/x86_64-unknown-linux-gnu/include -isystem
/usr/local/gcc-svn/x86_64-unknown-linux-gnu/sys-include
-I/MHz/roger/src/gcc-svn-121027/build-121027/x86_64-unknown-linux-gnu/libstdc++-v3/include/x86_64-unknown-linux-gnu
-I/MHz/roger/src/gcc-svn-121027/build-121027/x86_64-unknown-linux-gnu/libstdc++-v3/include
-I/MHz/roger/src/gcc-svn-121027/trunk/libstdc++-v3/libsupc++
-fno-implicit-templates -Wall -Wextra -Wwrite-strings -Wcast-qual
-fdiagnostics-show-location=once -ffunction-sections -fdata-sections -g -O2
-D_GNU_SOURCE -c ../../../../trunk/libstdc++-v3/src/compatibility.cc  -fPIC
-DPIC -o .libs/compatibility.o -E -v 
Reading specs from /MHz/roger/src/gcc-svn-121027/build-121027/./gcc/specs
Target: x86_64-unknown-linux-gnu
Configured with: ../trunk/configure --prefix=/usr/local/gcc-svn
--enable-languages=c,c++ --disable-multilib
Thread model: posix
gcc version 4.3.0 20070121 (experimental)
 /MHz/roger/src/gcc-svn-121027/build-121027/./gcc/cc1plus -E -quiet -nostdinc++
-v
-I/MHz/roger/src/gcc-svn-121027/build-121027/x86_64-unknown-linux-gnu/libstdc++-v3/include/x86_64-unknown-linux-gnu
-I/MHz/roger/src/gcc-svn-121027/build-121027/x86_64-unknown-linux-gnu/libstdc++-v3/include
-I/MHz/roger/src/gcc-svn-121027/trunk/libstdc++-v3/libsupc++ -iprefix
/MHz/roger/src/gcc-svn-121027/build-121027/gcc/../lib/gcc/x86_64-unknown-linux-gnu/4.3.0/
-isystem /MHz/roger/src/gcc-svn-121027/build-121027/./gcc/include -D_GNU_SOURCE
-D_GNU_SOURCE -DPIC -isystem
/usr/local/gcc-svn/x86_64-unknown-linux-gnu/include -isystem
/usr/local/gcc-svn/x86_64-unknown-linux-gnu/sys-include
../../../../trunk/libstdc++-v3/src/compatibility.cc -o .libs/compatibility.o
-mtune=generic -Wall -Wextra -Wwrite-strings -Wcast-qual
-fno-implicit-templates -fdiagnostics-show-location=once -ffunction-sections
-fdata-sections -fPIC -fworking-directory -O2
ignoring nonexistent directory
"/usr/local/gcc-svn/x86_64-unknown-linux-gnu/include"
ignoring nonexistent directory
"/usr/local/gcc-svn/x86_64-unknown-linux-gnu/sys-include"
ignoring nonexistent directory
"/MHz/roger/src/gcc-svn-121027/build-121027/gcc/../lib/gcc/x86_64-unknown-linux-gnu/4.3.0/include"
ignoring nonexistent directory
"/MHz/roger/src/gcc-svn-121027/build-121027/gcc/../lib/gcc/x86_64-unknown-linux-gnu/4.3.0/../../../../x86_64-unknown-linux-gnu/include"
ignoring nonexistent directory
"/MHz/roger/src/gcc-svn-121027/build-121027/gcc/../lib/gcc//include"
ignoring nonexistent directory
"/MHz/roger/src/gcc-svn-121027/build-121027/gcc/../lib/gcc//lib/gcc/x86_64-unknown-linux-gnu/4.3.0/include"
ignoring nonexistent directory
"/MHz/roger/src/gcc-svn-121027/build-121027/gcc/../lib/gcc//lib/gcc/x86_64-unknown-linux-gnu/4.3.0/../../../../x86_64-unknown-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:

/MHz/roger/src/gcc-svn-121027/build-121027/x86_64-unknown-linux-gnu/libstdc++-v3/include/x86_64-unknown-linux-gnu

/MHz/roger/src/gcc-svn-121027/build-121027/x86_64-unknown-linux-gnu/libstdc++-v3/include
 /MHz/roger/src/gcc-svn-121027/trunk/libstdc++-v3/libsupc++
 /MHz/roger/src/gcc-svn-121027/build-121027/./gcc/include
 /usr/local/include
 /usr/include
End of search list.

So, searching in order the directories listed above, the first occurence of
stdio.h in the directory concerned is this:

/MHz/roger/src/gcc-svn-121027/build-121027/./gcc/include/stdio.h

which contains this:

[EMAIL PROTECTED]  $ cat
/MHz/roger/src/gcc-svn-121027/build-121027/./gcc/include/stdio.h
/*  DO NOT EDIT THIS FILE.

    It has been auto-edited by fixincludes from:

        "/usr/include/stdio.h"

    This had to be done to correct non-standard usages in the
    original, manufacturer supplied header file.  */

#ifndef FIXINC_WRAP_STDIO_H_STDIO_STDARG_H
#define FIXINC_WRAP_STDIO_H_STDIO_STDARG_H 1

#define __need___va_list
#include <stdarg.h>
/* Autogenerated by create_ml_includes() in multilib.eclass */

#ifdef __i386__
# include <gentoo-multilib/x86/stdio.h>
#endif /* __i386__ */

#ifdef __x86_64__
# include <gentoo-multilib/amd64/stdio.h>
#endif /* __x86_64__ */

#endif  /* FIXINC_WRAP_STDIO_H_STDIO_STDARG_H */


Could this be related to the problem in
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29867


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30915

Reply via email to