Synopsis: STL namespaces, which file is included?
Severity: serious
Priority: medium
Category: c++ c
Class: rejects-legal
Release: 3.3.2 (Debian) (Debian testing/unstable)
Environment:
System: Linux kasandra 2.4.20-wolk4.9s #1 Thu Sep 11 14:48:11 CEST 2003 i686 GNU/Linux
Architecture: i686
host: i486-pc-linux-gnu
build: i486-pc-linux-gnu
target: i486-pc-linux-gnu
Description: Sorry my english is quite bad...
I have got problem because I dont know which file is included first:/usr/include/c++/cstddef
or /usr/include/g++-3/cstddef I think this is the proble why "size_t" is not visible.
How-To-Repeat: I add ERR file with gcc output Fix: I don't know
Reading specs from /usr/lib/gcc-lib/i486-linux/3.3.2/specs Configured with: ../src/configure -v --enable-languages=c,c++,java,f77,pascal,objc,ada,treelang --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-gxx-include-dir=/usr/include/c++/3.3 --enable-shared --with-system-zlib --enable-nls --without-included-gettext --enable-__cxa_atexit --enable-clocale=gnu --enable-debug --enable-java-gc=boehm --enable-java-awt=xlib --enable-objc-gc i486-linux Thread model: posix gcc version 3.3.2 (Debian) /usr/lib/gcc-lib/i486-linux/3.3.2/cc1plus -quiet -v -I/export/middleware/ace_toolkit/5.3.1/ACE_wrappers-gcc3-i386 -I/export/middleware/ace_toolkit/5.3.1/ACE_wrappers-gcc3-i386/TAO -I/export/middleware/ace_toolkit/5.3.1/ACE_wrappers-gcc3-i386/TAO/tao -I../include/log4cpp/ -I../idl/ -I. -I/usr/X11R6/include -I/usr/X11R6/include -I/usr/include/c++/3.3 -I/usr/include/g++-3 -I/export/middleware/ace_toolkit/5.3.1/ACE_wrappers-gcc3-i386/TAO/orbsvcs -I/export/middleware/ace_toolkit/5.3.1/ACE_wrappers-gcc3-i386/TAO/orbsvcs/orbsvcs -I../include/log4cpp/ -I../include/ -I../include/ConfigParser/ -D__GNUC__=3 -D__GNUC_MINOR__=3 -D__GNUC_PATCHLEVEL__=2 -D_GNU_SOURCE -DACE_MT_SAFE=0 -DACE_HAS_FL -DACE_HAS_EXCEPTIONS -D__ACE_INLINE__ -DGATEWAY_DEBUG -DGATEWAY_ERROR -DGATEWAY_NOTICE EC_SpreadGatewayMain.cc -D__GNUG__=3 -quiet -dumpbase EC_SpreadGatewayMain.cc -auxbase-strip .obj/EC_SpreadGatewayMain.o -g -g -O3 -W -Wall -Wpointer-arith -Wno-uninitialized -version -o - | as -V -Qy -o .obj/EC_SpreadGatewayMain.o - GNU C++ version 3.3.2 (Debian) (i486-linux) compiled by GNU C version 3.3.2 (Debian). GGC heuristics: --param ggc-min-expand=64 --param ggc-min-heapsize=64339 GNU assembler version 2.14.90.0.7 (i386-linux) using BFD version 2.14.90.0.7 20031029 Debian GNU/Linux ignoring nonexistent directory "/usr/i486-linux/include" ignoring duplicate directory "/usr/include/c++/3.3" as it is a non-system directory that duplicates a system directory ignoring duplicate directory "/usr/X11R6/include" ignoring duplicate directory "../include/log4cpp" #include "..." search starts here: #include <...> search starts here: /export/middleware/ace_toolkit/5.3.1/ACE_wrappers-gcc3-i386 /export/middleware/ace_toolkit/5.3.1/ACE_wrappers-gcc3-i386/TAO /export/middleware/ace_toolkit/5.3.1/ACE_wrappers-gcc3-i386/TAO/tao ../include/log4cpp ../idl . /usr/X11R6/include /usr/include/g++-3 /export/middleware/ace_toolkit/5.3.1/ACE_wrappers-gcc3-i386/TAO/orbsvcs /export/middleware/ace_toolkit/5.3.1/ACE_wrappers-gcc3-i386/TAO/orbsvcs/orbsvcs ../include ../include/ConfigParser /usr/include/c++/3.3 /usr/include/c++/3.3/i486-linux /usr/include/c++/3.3/backward /usr/local/include /usr/lib/gcc-lib/i486-linux/3.3.2/include /usr/include End of search list. In file included from /usr/include/g++-3/stl_alloc.h:42, from /usr/include/g++-3/alloc.h:21, from /usr/include/g++-3/std/bastring.h:39, from /usr/include/g++-3/string:6, from EC_SpreadGatewayMain.cc:13: /usr/include/c++/3.3/new:82: error: `size_t' undeclared in namespace `std' /usr/include/c++/3.3/new:82: error: declaration of `operator new' as non-function /usr/include/c++/3.3/new:82: error: invalid declarator /usr/include/c++/3.3/new:83: error: `size_t' undeclared in namespace `std' /usr/include/c++/3.3/new:83: error: declaration of `operator new []' as non-function /usr/include/c++/3.3/new:83: error: invalid declarator /usr/include/c++/3.3/new:86: error: `size_t' undeclared in namespace `std' /usr/include/c++/3.3/new:86: error: parse error before `::' token /usr/include/c++/3.3/new:86: error: `operator new' takes type `size_t' (` unsigned int') as first parameter /usr/include/c++/3.3/new:87: error: `size_t' undeclared in namespace `std' /usr/include/c++/3.3/new:87: error: parse error before `::' token /usr/include/c++/3.3/new:87: error: `operator new' takes type `size_t' (` unsigned int') as first parameter /usr/include/c++/3.3/new:92: error: `size_t' undeclared in namespace `std' /usr/include/c++/3.3/new:92: error: parse error before `*' token /usr/include/c++/3.3/new:92: error: `operator new' takes type `size_t' (` unsigned int') as first parameter /usr/include/c++/3.3/new: In function `void* operator new(unsigned int, ...)': /usr/include/c++/3.3/new:92: error: `__p' undeclared (first use this function) /usr/include/c++/3.3/new:92: error: (Each undeclared identifier is reported only once for each function it appears in.) /usr/include/c++/3.3/new: At global scope: /usr/include/c++/3.3/new:93: error: `size_t' undeclared in namespace `std' /usr/include/c++/3.3/new:93: error: parse error before `*' token /usr/include/c++/3.3/new:93: error: `operator new' takes type `size_t' (` unsigned int') as first parameter In file included from /usr/include/g++-3/alloc.h:21, from /usr/include/g++-3/std/bastring.h:39, from /usr/include/g++-3/string:6, from EC_SpreadGatewayMain.cc:13: /usr/include/g++-3/stl_alloc.h:704: warning: `__default_alloc_template<threads, inst>::_Obj' is implicitly a typename /usr/include/g++-3/stl_alloc.h:704: warning: implicit typename is deprecated, please see the documentation for details In file included from /usr/include/g++-3/std/bastring.h:656, from /usr/include/g++-3/string:6, from EC_SpreadGatewayMain.cc:13: /usr/include/g++-3/std/bastring.cc:58: warning: `basic_string<charT, traits, Allocator>::Rep' is implicitly a typename /usr/include/g++-3/std/bastring.cc:58: warning: implicit typename is deprecated, please see the documentation for details /usr/include/g++-3/std/bastring.cc:232: warning: `basic_string<charT, traits, Allocator>::size_type' is implicitly a typename /usr/include/g++-3/std/bastring.cc:232: warning: implicit typename is deprecated, please see the documentation for details /usr/include/g++-3/std/bastring.cc:246: warning: `basic_string<charT, traits, Allocator>::size_type' is implicitly a typename /usr/include/g++-3/std/bastring.cc:246: warning: implicit typename is deprecated, please see the documentation for details /usr/include/g++-3/std/bastring.cc:259: warning: `basic_string<charT, traits, Allocator>::size_type' is implicitly a typename /usr/include/g++-3/std/bastring.cc:259: warning: implicit typename is deprecated, please see the documentation for details /usr/include/g++-3/std/bastring.cc:270: warning: `basic_string<charT, traits, Allocator>::size_type' is implicitly a typename /usr/include/g++-3/std/bastring.cc:270: warning: implicit typename is deprecated, please see the documentation for details /usr/include/g++-3/std/bastring.cc:278: warning: `basic_string<charT, traits, Allocator>::size_type' is implicitly a typename /usr/include/g++-3/std/bastring.cc:278: warning: implicit typename is deprecated, please see the documentation for details /usr/include/g++-3/std/bastring.cc:297: warning: `basic_string<charT, traits, Allocator>::size_type' is implicitly a typename /usr/include/g++-3/std/bastring.cc:297: warning: implicit typename is deprecated, please see the documentation for details /usr/include/g++-3/std/bastring.cc:315: warning: `basic_string<charT, traits, Allocator>::size_type' is implicitly a typename /usr/include/g++-3/std/bastring.cc:315: warning: implicit typename is deprecated, please see the documentation for details /usr/include/g++-3/std/bastring.cc:327: warning: `basic_string<charT, traits, Allocator>::size_type' is implicitly a typename /usr/include/g++-3/std/bastring.cc:327: warning: implicit typename is deprecated, please see the documentation for details /usr/include/g++-3/std/bastring.cc:343: warning: `basic_string<charT, traits, Allocator>::size_type' is implicitly a typename /usr/include/g++-3/std/bastring.cc:343: warning: implicit typename is deprecated, please see the documentation for details /usr/include/g++-3/std/bastring.cc:355: warning: `basic_string<charT, traits, Allocator>::size_type' is implicitly a typename /usr/include/g++-3/std/bastring.cc:355: warning: implicit typename is deprecated, please see the documentation for details /usr/include/g++-3/std/bastring.cc:367: warning: `basic_string<charT, traits, Allocator>::size_type' is implicitly a typename /usr/include/g++-3/std/bastring.cc:367: warning: implicit typename is deprecated, please see the documentation for details /usr/include/g++-3/std/bastring.cc:383: warning: `basic_string<charT, traits, Allocator>::size_type' is implicitly a typename /usr/include/g++-3/std/bastring.cc:383: warning: implicit typename is deprecated, please see the documentation for details /usr/include/g++-3/std/bastring.cc:518: warning: `basic_string<charT, traits, Allocator>::Rep' is implicitly a typename /usr/include/g++-3/std/bastring.cc:518: warning: implicit typename is deprecated, please see the documentation for details /usr/include/g++-3/std/bastring.cc:522: warning: `basic_string<charT, traits, Allocator>::size_type' is implicitly a typename /usr/include/g++-3/std/bastring.cc:522: warning: implicit typename is deprecated, please see the documentation for details In file included from /usr/include/c++/3.3/backward/new.h:33, from /usr/include/g++-3/stl_algobase.h:52, from /usr/include/g++-3/vector:30, from /usr/include/c++/3.3/ext/stl_hashtable.h:68, from /usr/include/c++/3.3/ext/hash_map:65, from EC_SpreadGatewayMain.cc:16: /usr/include/c++/3.3/backward/backward_warning.h:32:2: warning: #warning This file includes at least one deprecated or antiquated header. Please consider using one of the 32 headers found in section 17.4.1.2 of the C++ standard. Examples include substituting the <X> header for the <X.h> header for C++ includes, or <sstream> instead of the deprecated header <strstream.h>. To disable this warning use -Wno-deprecated. In file included from /usr/include/c++/3.3/bits/stl_algo.h:64, from /usr/include/c++/3.3/ext/stl_hashtable.h:70, from /usr/include/c++/3.3/ext/hash_map:65, from EC_SpreadGatewayMain.cc:16: /usr/include/c++/3.3/bits/stl_heap.h: In function `void std::push_heap(_RandomAccessIterator, _RandomAccessIterator)': /usr/include/c++/3.3/bits/stl_heap.h:93: error: parse error before `>' token /usr/include/c++/3.3/bits/stl_heap.h: In function `void std::push_heap(_RandomAccessIterator, _RandomAccessIterator, _Compare)': /usr/include/c++/3.3/bits/stl_heap.h:127: error: parse error before `>' token /usr/include/c++/3.3/bits/stl_heap.h: In function `void std::pop_heap(_RandomAccessIterator, _RandomAccessIterator)': /usr/include/c++/3.3/bits/stl_heap.h:172: error: parse error before `>' token /usr/include/c++/3.3/bits/stl_heap.h: In function `void std::pop_heap(_RandomAccessIterator, _RandomAccessIterator, _Compare)': /usr/include/c++/3.3/bits/stl_heap.h:218: error: parse error before `>' token /usr/include/c++/3.3/bits/stl_heap.h: In function `void std::make_heap(_RandomAccessIterator, _RandomAccessIterator)': /usr/include/c++/3.3/bits/stl_heap.h:235: error: parse error before `>' token /usr/include/c++/3.3/bits/stl_heap.h: In function `void std::make_heap(_RandomAccessIterator, _RandomAccessIterator, _Compare)': /usr/include/c++/3.3/bits/stl_heap.h:261: error: parse error before `>' token /usr/include/c++/3.3/bits/stl_heap.h: In function `void std::sort_heap(_RandomAccessIterator, _RandomAccessIterator)': /usr/include/c++/3.3/bits/stl_heap.h:281: error: parse error before `>' token /usr/include/c++/3.3/bits/stl_heap.h: In function `void std::sort_heap(_RandomAccessIterator, _RandomAccessIterator, _Compare)': /usr/include/c++/3.3/bits/stl_heap.h:296: error: parse error before `>' token In file included from /usr/include/c++/3.3/bits/stl_algo.h:65, from /usr/include/c++/3.3/ext/stl_hashtable.h:70, from /usr/include/c++/3.3/ext/hash_map:65, from EC_SpreadGatewayMain.cc:16: /usr/include/c++/3.3/bits/stl_tempbuf.h: At global scope: /usr/include/c++/3.3/bits/stl_tempbuf.h:78: error: type specifier omitted for parameter `_ForwardIteratorConcept' /usr/include/c++/3.3/bits/stl_tempbuf.h:80: error: parse error in method specification before `_M_original_len' /usr/include/c++/3.3/bits/stl_tempbuf.h:144: error: parse error before `}' token In file included from /usr/include/c++/3.3/ext/stl_hashtable.h:70, from /usr/include/c++/3.3/ext/hash_map:65, from EC_SpreadGatewayMain.cc:16: /usr/include/c++/3.3/bits/stl_algo.h:69: error: semicolon missing after declaration of `std::_Temporary_buffer<_ForwardIterator, _Tp>' /usr/include/c++/3.3/bits/stl_tempbuf.h:80: error: parse error at end of saved function text /usr/include/c++/3.3/bits/stl_algo.h:70: error: ISO C++ forbids defining types within return type /usr/include/c++/3.3/bits/stl_algo.h:70: error: syntax error before `{' token /usr/include/c++/3.3/bits/stl_algo.h:70: confused by earlier errors, bailing out make: *** [.obj/EC_SpreadGatewayMain.o] Błąd 1
#---------------------------------------------------------------------------- # CosEventExample/Makefile #---------------------------------------------------------------------------- #---------------------------------------------------------------------------- # Local macros #---------------------------------------------------------------------------- exceptions=1 threads=0 fl_reactor=1 inline=1 ifndef TAO_ROOT TAO_ROOT = $(ACE_ROOT)/TAO endif IDL_FILES=../idl/ZdarzenieSluzbowe IDL_SRC=../idl/ZdarzenieSluzboweC.cpp ZdarzenieSluzboweS.cpp IDL_HDR=../idl/ZdarzenieSluzboweC.h ZdarzenieSluzboweS.h # This generates the names of all the header and source files to build. DEFS = $(IDL_HDR) AxPushConsumer.hh EchoEventSupplier_i.hh NAxInHandler_i.hh SpreadMailbox.hh GatewayLog.hh EC_SpreadConnection.hh SRC = $(IDL_SRC) \ EC_SpreadConnection.cc \ EC_SpreadGatewayMain.cc \ NAxInHandler.cc \ NAxTimeHandler.cc \ AxPushSupplier.cc \ AxPushConsumer.cc \ SpreadMailbox.cc # ZdarzenieSluzbowe.cc # List the libraries with which to link. LDLIBS = -lTAO_CosNaming -lTAO_RTEvent -lTAO -lACE -L ../lib/ -lconfigparser -llog4cpp -lspread #LIBCONF=libconfigparser.a #LIBCONFOBJ=.obj/ConfigParser_t.o .obj/PathTokenizer_t.o #LIB_CONFSRC=ConfigParser_t.cpp ConfigParser_t.h PathTokenizer_t.cc PathTokenizer_t.h # List the object files that make up the server (SVR) and client (CLT) FILE_SVR_OBJS = ZdarzenieSluzboweC.o ZdarzenieSluzboweS.o \ EC_SpreadGatewayMain.o EC_SpreadConnection.o AxPushConsumer.o NAxInHandler.o NAxTimeHandler.o AxPushSupplier.o SpreadMailbox.o # This defines the binary executable targets to build. BIN = EC_SpreadGateway #---------------------------------------------------------------------------- # Include macros and targets #---------------------------------------------------------------------------- include $(ACE_ROOT)/include/makeinclude/wrapper_macros.GNU include $(ACE_ROOT)/include/makeinclude/macros.GNU include $(TAO_ROOT)/rules.tao.GNU include $(ACE_ROOT)/include/makeinclude/rules.common.GNU include $(ACE_ROOT)/include/makeinclude/rules.nonested.GNU # include $(ACE_ROOT)/include/makeinclude/rules.bin.GNU include $(ACE_ROOT)/include/makeinclude/rules.local.GNU include $(TAO_ROOT)/taoconfig.mk # Add this to include path so we can #include <corba.h> instead of # #include <tao/corba.h> INCLDIRS += -I$(TAO_ROOT)/tao -I../include/log4cpp/ -I../idl/ -I. # LDFLAGS += -L$(TAO_ROOT)/tao CPPFLAGS += -v -I/usr/include/c++/3.3 -I/usr/include/g++-3 -I$(TAO_ROOT)/orbsvcs -I$(TAO_ROOT)/orbsvcs/orbsvcs -I../include/log4cpp/ -I../include/ -I../include/ConfigParser/ #-I/usr/include/g++-3 # must have to use NamingService or # other CORBAservices CPPFLAGS += -g # turn on debugging CPPFLAGS += -DGATEWAY_DEBUG CPPFLAGS += -DGATEWAY_ERROR CPPFLAGS += -DGATEWAY_NOTICE LDFLAGS += -g .PRECIOUS: ZdarzenieSluzboweC.cpp ZdarzenieSluzboweC.h ZdarzenieSluzboweC.i .PRECIOUS: ZdarzenieSluzboweS.cpp ZdarzenieSluzboweS.h ZdarzenieSluzboweS.i .PRECIOUS: ZdarzenieSluzboweS_T.cpp ZdarzenieSluzboweS_T.h ZdarzenieSluzboweS_T.i EC_SpreadGateway: $(addprefix $(VDIR),$(FILE_SVR_OBJS)) $(LIBCONF) $(LINK.cc) $(LDFLAGS) -o $@ $^ $(VLDLIBS) $(POSTLINK) $(LIBCONF):$(LIBCONFOBJ) $(AR) rv $@ $? #$(LIBCONFOBJ): $(LIBCONFSRC) # g++ -c -O9 -o .obj/ConfigParser_t.o ConfigParser_t.cpp # g++ -c -O9 -o .obj/PathTokenizer_t.o PathTokenizer_t.cc # #.obj/ #.obj/NAxInHandlerMain.o .obj/NAxInHandlerMain.so .shobj/NAxInHandlerMain.o .shobj/NAxInHandlerMain.so: $(addprefix) # echo "\n\n ---- \n\n" # $(LINK.cc) $(LDFLAGS) -c $@ $^ $(VLDLIBS) $(POSTLINK) # DO NOT DELETE THIS LINE -- g++dep uses it. # DO NOT PUT ANYTHING AFTER THIS LINE, IT WILL GO AWAY. #.obj/AxPushSupplier.o .obj/AxPushSupplier.so .shobj/AxPushSupplier.o .shobj/AxPushSupplier.so: AxPushSupplier.cc AxPushSupplier.hh # IF YOU PUT ANYTHING HERE IT WILL GO AWAY