This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug libstdc++/31717] New: libstdc++-v3 - Make fails with: ./c++locale.h:69: error: '__locale_t' does not name a type
- From: "rob1weld at aol dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 26 Apr 2007 19:04:16 -0000
- Subject: [Bug libstdc++/31717] New: libstdc++-v3 - Make fails with: ./c++locale.h:69: error: '__locale_t' does not name a type
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
I have compiled GCC 4.2.0 under the target i686-pc-linux-gnu with the exact
same ./configure options and the build went fairly well (it completed, very few
test errors) so I decided to use exactly the same ./configure options to build
under Cygwin for WinXP. Here is my xgcc-v:
$ stage3-gcc/xgcc -v
Using built-in specs.
Target: i686-pc-cygwin
Configured with: ../gcc-4_2-branch/configure --verbose
--enable-languages=c,ada,c++,fortran,java,objc,obj-c++ --with-tune=athlon-xp
--prefix=/usr --enable-objc-gc --enable-concept-checks --mandir=/usr/share/man
--infodir=/usr/share/info --with-gxx-include-dir=/usr/include/c++/4.2
--enable-libstdcxx-debug --enable-static --enable-shared
--enable-initfini-array --enable-__cxa_atexit --enable-threads
--enable-version-specific-runtime-libs --enable-libssp --enable-libmudflap
--enable-libgomp --disable-werror --enable-nls --without-included-gettext
--enable-decimal-float --with-long-double-128 --enable-clocale=gnu
--enable-debug --with-stabs --disable-sjlj-exceptions --enable-java-gc=boehm
--with-x --enable-java-awt=gtk,xlib --enable-gtk-cairo --enable-qt-peer
--enable-xmlj --enable-gconf-peer --enable-tool-wrappers --with-gjdoc
--enable-portable-native-sync --enable-libgcj-multifile --with-stabs
Thread model: posix
gcc version 4.2.0 20070413 (prerelease)
Here are the errors that come up (I searched bugzilla for locale_t and got NO
hits).
make[2]: Leaving directory
`/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libiberty'
make[2]: Entering directory
`/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3'
make "AR_FLAGS=rc" "CC_FOR_BUILD=gcc"
"CC_FOR_TARGET=/cygdrive/c/gcc-4_2-branch-build/./gcc/xgcc
-B/cygdrive/c/gcc-4_2-branch-build/./gcc/ -B/usr//bin/ -B/usr//lib/ -isystem
/usr//include -isystem /usr//sys-include" "CFLAGS=-O2 -g -O2 " "CXXFLAGS=-g -O2
" "CFLAGS_FOR_BUILD=-g -O2" "CFLAGS_FOR_TARGET=-O2 -g -O2 "
"INSTALL=/usr/bin/install -c" "INSTALL_DATA=/usr/bin/install -c -m 644"
"INSTALL_PROGRAM=/usr/bin/install -c" "INSTALL_SCRIPT=/usr/bin/install -c"
"LDFLAGS=" "LIBCFLAGS=-O2 -g -O2 " "LIBCFLAGS_FOR_TARGET=-O2 -g -O2 "
"MAKE=make" "MAKEINFO=makeinfo --split-size=5000000 --split-size=5000000 "
"PICFLAG=" "PICFLAG_FOR_TARGET=" "SHELL=/bin/sh" "RUNTESTFLAGS="
"exec_prefix=/usr" "infodir=/usr/share/info" "libdir=/usr/lib"
"includedir=/usr/include" "prefix=/usr" "tooldir=/usr/"
"gxx_include_dir=/usr/include/c++/4.2" "AR=/usr/i686-pc-cygwin/bin/ar"
"AS=/cygdrive/c/gcc-4_2-branch-build/./gcc/as"
"LD=/cygdrive/c/gcc-4_2-branch-build/./gcc/collect-ld"
"RANLIB=/usr/i686-pc-cygwin/bin/ranlib"
"NM=/cygdrive/c/gcc-4_2-branch-build/./gcc/nm" "NM_FOR_BUILD="
"NM_FOR_TARGET=/usr/i686-pc-cygwin/bin/nm" "DESTDIR=" "WERROR=" all-recursive
make[3]: Entering directory
`/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3'
Making all in include
make[4]: Entering directory
`/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3/include'
if [ ! -d ".//bits/stdc++.h.gch" ]; then \
mkdir -p .//bits/stdc++.h.gch; \
fi; \
/cygdrive/c/gcc-4_2-branch-build/./gcc/xgcc -shared-libgcc
-B/cygdrive/c/gcc-4_2-branch-build/./gcc -nostdinc++
-L/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3/src
-L/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3/src/.libs
-B/usr//bin/ -B/usr//lib/ -isystem /usr//include -isystem /usr//sys-include
-Winvalid-pch -Wno-deprecated -x c++-header -g -O2
-I/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3/include/
-I/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3/include
-I/cygdrive/C/makecygwin/gcc-4_2-branch/libstdc++-v3/libsupc++ -O0 -g
/cygdrive/C/makecygwin/gcc-4_2-branch/libstdc++-v3/include/precompiled/stdc++.h
-o bits/stdc++.h.gch/O0g.gch
In file included from
/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3/include/iosfwd:45,
from
/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3/include/bits/stl_algobase.h:70,
from
/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3/include/algorithm:65,
from
/cygdrive/C/makecygwin/gcc-4_2-branch/libstdc++-v3/include/precompiled/stdc++.h:55:
/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3/include/bits/c++locale.h:69:
error: '__locale_t' does not name a type
/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3/include/bits/c++locale.h:76:
error: expected ',' or '...' before '&' token
/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3/include/bits/c++locale.h:
In function 'int std::__convert_from_v(int)':
/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3/include/bits/c++locale.h:91:
error: '__fmt' was not declared in this scope
/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3/include/bits/c++locale.h:96:
error: '__out' was not declared in this scope
In file included from
/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3/include/bits/ios_base.h:47,
from
/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3/include/ios:48,
from
/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3/include/ostream:45,
from
/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3/include/bitset:59,
from
/cygdrive/C/makecygwin/gcc-4_2-branch/libstdc++-v3/include/precompiled/stdc++.h:56:
/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3/include/bits/locale_classes.h:
At global scope:
/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3/include/bits/locale_classes.h:351:
error: '__c_locale' does not name a type
/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3/include/bits/locale_classes.h:382:
error: '__c_locale' has not been declared
/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3/include/bits/locale_classes.h:383:
error: '__c_locale' has not been declared
/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3/include/bits/locale_classes.h:385:
error: '__c_locale' does not name a type
/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3/include/bits/locale_classes.h:389:
error: '__c_locale' has not been declared
/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3/include/bits/locale_classes.h:393:
error: '__c_locale' does not name a type
In file included from
/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3/include/bits/basic_ios.h:44,
from
/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3/include/ios:50,
from
/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3/include/ostream:45,
from
/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3/include/bitset:59,
from
/cygdrive/C/makecygwin/gcc-4_2-branch/libstdc++-v3/include/precompiled/stdc++.h:56:
/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3/include/bits/locale_facets.h:68:
error: expected ',' or '...' before '&' token
/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3/include/bits/locale_facets.h:74:
error: expected ',' or '...' before '&' token
/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3/include/bits/locale_facets.h:79:
error: expected ',' or '...' before '&' token
/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3/include/bits/locale_facets.h:84:
error: expected ',' or '...' before '&' token
/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3/include/bits/locale_facets.h:685:
error: '__c_locale' does not name a type
Errors resulting from that issue continue to cause a few pages of warnings that
would likely not be shown if that problem did not occur (so I deleted them from
this report) - the end of the messages is this:
/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3/include/bits/locale_facets.tcc:1556:
error: there are no arguments to '_S_get_c_locale' that depend on a template
parameter, so a declaration of '_S_get_c_locale' must be available
/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3/include/bits/locale_facets.tcc:
In member function 'virtual _OutIter std::money_put<_CharT,
_OutIter>::do_put(_OutIter, bool, std::ios_base&, _CharT, long double) const':
/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3/include/bits/locale_facets.tcc:1780:
error: there are no arguments to '_S_get_c_locale' that depend on a template
parameter, so a declaration of '_S_get_c_locale' must be available
make[4]: *** [bits/stdc++.h.gch/O0g.gch] Error 1
make[4]: Leaving directory
`/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3/include'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory
`/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3'
make[2]: *** [all] Error 2
make[2]: Leaving directory
`/cygdrive/c/gcc-4_2-branch-build/i686-pc-cygwin/libstdc++-v3'
make[1]: *** [all-target-libstdc++-v3] Error 2
make[1]: Leaving directory `/cygdrive/c/gcc-4_2-branch-build'
make: *** [all] Error 2
I'll look into this myself and see what I come up with.
--
Summary: libstdc++-v3 - Make fails with: ./c++locale.h:69: error:
'__locale_t' does not name a type
Product: gcc
Version: 4.2.0
Status: UNCONFIRMED
Severity: blocker
Priority: P3
Component: libstdc++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: rob1weld at aol dot com
GCC build triplet: i686-pc-cygwin
GCC host triplet: i686-pc-cygwin
GCC target triplet: i686-pc-cygwin
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31717