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]
Other format: [Raw text]

[Bug bootstrap/53351] New: Missing integer types when bootstrapping on AIX 4.3


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

             Bug #: 53351
           Summary: Missing integer types when bootstrapping on AIX 4.3
    Classification: Unclassified
           Product: gcc
           Version: 4.7.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: bootstrap
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: skunk@iskunk.org
              Host: powerpc-ibm-aix4.3.2.0
            Target: powerpc-ibm-aix4.3.2.0
             Build: powerpc-ibm-aix4.3.2.0


Bootstrapping 4.7.0 on AIX 4.3 fails with

[...]
Making all in c++11
gmake[6]: Entering directory
`/tmp/gcc-build/powerpc-ibm-aix4.3.2.0/libstdc++-v3/src/c++11'
/opt/freeware/bin/bash ../../libtool --tag CXX --tag disable-shared 
--mode=compile /tmp/gcc-build/./gcc/xgcc -shared-libgcc -B/tmp/gcc-build/./gcc
-nostdinc++ -L/tmp/gcc-build/powerpc-ibm-aix4.3.2.0/libstdc++-v3/src
-L/tmp/gcc-build/powerpc-ibm-aix4.3.2.0/libstdc++-v3/src/.libs
-B/opt/tg/powerpc-ibm-aix4.3.2.0/bin/ -B/opt/tg/powerpc-ibm-aix4.3.2.0/lib/
-isystem /opt/tg/powerpc-ibm-aix4.3.2.0/include -isystem
/opt/tg/powerpc-ibm-aix4.3.2.0/sys-include   
-I/home/src/gcc-4.7.0/libstdc++-v3/../libgcc
-I/tmp/gcc-build/powerpc-ibm-aix4.3.2.0/libstdc++-v3/include/powerpc-ibm-aix4.3.2.0
-I/tmp/gcc-build/powerpc-ibm-aix4.3.2.0/libstdc++-v3/include
-I/home/src/gcc-4.7.0/libstdc++-v3/libsupc++   -fno-implicit-templates -Wall
-Wextra -Wwrite-strings -Wcast-qual -Wabi  -fdiagnostics-show-location=once  
-ffunction-sections -fdata-sections  -frandom-seed=chrono.lo -std=gnu++11 -g 
-c -o chrono.lo /home/src/gcc-4.7.0/libstdc++-v3/src/c++11/chrono.cc
libtool: compile:  /tmp/gcc-build/./gcc/xgcc -shared-libgcc
-B/tmp/gcc-build/./gcc -nostdinc++
-L/tmp/gcc-build/powerpc-ibm-aix4.3.2.0/libstdc++-v3/src
-L/tmp/gcc-build/powerpc-ibm-aix4.3.2.0/libstdc++-v3/src/.libs
-B/opt/tg/powerpc-ibm-aix4.3.2.0/bin/ -B/opt/tg/powerpc-ibm-aix4.3.2.0/lib/
-isystem /opt/tg/powerpc-ibm-aix4.3.2.0/include -isystem
/opt/tg/powerpc-ibm-aix4.3.2.0/sys-include
-I/home/src/gcc-4.7.0/libstdc++-v3/../libgcc
-I/tmp/gcc-build/powerpc-ibm-aix4.3.2.0/libstdc++-v3/include/powerpc-ibm-aix4.3.2.0
-I/tmp/gcc-build/powerpc-ibm-aix4.3.2.0/libstdc++-v3/include
-I/home/src/gcc-4.7.0/libstdc++-v3/libsupc++ -fno-implicit-templates -Wall
-Wextra -Wwrite-strings -Wcast-qual -Wabi -fdiagnostics-show-location=once
-ffunction-sections -fdata-sections -frandom-seed=chrono.lo -std=gnu++11 -g -c
/home/src/gcc-4.7.0/libstdc++-v3/src/c++11/chrono.cc  -DPIC -o chrono.o
In file included from
/tmp/gcc-build/powerpc-ibm-aix4.3.2.0/libstdc++-v3/include/ratio:39:0,
                 from
/tmp/gcc-build/powerpc-ibm-aix4.3.2.0/libstdc++-v3/include/chrono:38,
                 from /home/src/gcc-4.7.0/libstdc++-v3/src/c++11/chrono.cc:25:
/tmp/gcc-build/powerpc-ibm-aix4.3.2.0/libstdc++-v3/include/cstdint:65:11:
error: '::int8_t' has not been declared
/tmp/gcc-build/powerpc-ibm-aix4.3.2.0/libstdc++-v3/include/cstdint:66:11:
error: '::int16_t' has not been declared
/tmp/gcc-build/powerpc-ibm-aix4.3.2.0/libstdc++-v3/include/cstdint:67:11:
error: '::int32_t' has not been declared
/tmp/gcc-build/powerpc-ibm-aix4.3.2.0/libstdc++-v3/include/cstdint:68:11:
error: '::int64_t' has not been declared
/tmp/gcc-build/powerpc-ibm-aix4.3.2.0/libstdc++-v3/include/cstdint:70:11:
error: '::int_fast8_t' has not been declared
/tmp/gcc-build/powerpc-ibm-aix4.3.2.0/libstdc++-v3/include/cstdint:71:11:
error: '::int_fast16_t' has not been declared
/tmp/gcc-build/powerpc-ibm-aix4.3.2.0/libstdc++-v3/include/cstdint:72:11:
error: '::int_fast32_t' has not been declared
/tmp/gcc-build/powerpc-ibm-aix4.3.2.0/libstdc++-v3/include/cstdint:73:11:
error: '::int_fast64_t' has not been declared
/tmp/gcc-build/powerpc-ibm-aix4.3.2.0/libstdc++-v3/include/cstdint:75:11:
error: '::int_least8_t' has not been declared
/tmp/gcc-build/powerpc-ibm-aix4.3.2.0/libstdc++-v3/include/cstdint:76:11:
error: '::int_least16_t' has not been declared
/tmp/gcc-build/powerpc-ibm-aix4.3.2.0/libstdc++-v3/include/cstdint:77:11:
error: '::int_least32_t' has not been declared
[numerous cascaded errors elided]
gmake[6]: *** [chrono.lo] Error 1
gmake[6]: Leaving directory
`/tmp/gcc-build/powerpc-ibm-aix4.3.2.0/libstdc++-v3/src/c++11'
gmake[6]: Entering directory
`/tmp/gcc-build/powerpc-ibm-aix4.3.2.0/libstdc++-v3/src'
gmake[6]: *** No rule to make target `../src/c++98/libc++98convenience.la',
needed by `libstdc++.la'.  Stop.
gmake[6]: Leaving directory
`/tmp/gcc-build/powerpc-ibm-aix4.3.2.0/libstdc++-v3/src'
gmake[5]: *** [all-recursive] Error 1
gmake[5]: Leaving directory
`/tmp/gcc-build/powerpc-ibm-aix4.3.2.0/libstdc++-v3/src'
gmake[4]: *** [all-recursive] Error 1
gmake[4]: Leaving directory
`/tmp/gcc-build/powerpc-ibm-aix4.3.2.0/libstdc++-v3'
gmake[3]: *** [all] Error 2
gmake[3]: Leaving directory
`/tmp/gcc-build/powerpc-ibm-aix4.3.2.0/libstdc++-v3'
gmake[2]: *** [all-stage1-target-libstdc++-v3] Error 2
gmake[2]: Leaving directory `/tmp/gcc-build'
gmake[1]: *** [stage1-bubble] Error 2
gmake[1]: Leaving directory `/tmp/gcc-build'
gmake: *** [bootstrap-lean] Error 2


As far as I can tell, things go wrong in <cstdint> in the "#if
_GLIBCXX_HAVE_STDINT_H" conditional---because if I repeat the above compiler
invocation with -D_GLIBCXX_HAVE_STDINT_H=1, compilation succeeds.

Note that while this system has no stdint.h header under /usr/include/, GCC
does provide one of its own ($(builddir)/gcc/include/stdint.h), and this header
is pulled in when _GLIBCXX_HAVE_STDINT_H is #defined to non-zero (confirmed via
-E).

_GLIBCXX_HAVE_STDINT_H is #undef in the various instances of c++config.h in the
build tree. If I hand-modify these in accordance with the above, the build
proceeds.

I believe the appropriate fix would be to have the libstdc++ configure-time
check for stdint.h regard GCC's header as satisfying the check. (If GCC
provides this header only when the system doesn't have one, or provides it
unconditionally, then perhaps the check is not needed at all.)


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