From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 25652 invoked by alias); 20 May 2005 12:21:57 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Received: (qmail 25523 invoked by uid 48); 20 May 2005 12:21:42 -0000 Date: Fri, 20 May 2005 12:21:00 -0000 From: "oms at home dot nl" To: gcc-bugs@gcc.gnu.org Message-ID: <20050520122127.21677.oms@home.nl> Reply-To: gcc-bugzilla@gcc.gnu.org Subject: [Bug libstdc++/21677] New: simply including ext/bitmap_allocator.h causes link-time errors X-Bugzilla-Reason: CC X-SW-Source: 2005-05/txt/msg02860.txt.bz2 List-Id: Compiling the two following trivial files together causes link-time errors due to multiply-defined symbols in bitmap_allocator.h. What am I missing here? // t.cc #include int main () { } // EOF // t1.cc #include // EOF $ /usr/local/gcc-3.4.4/bin/g++ -v -save-temps t.cc t1.cc Reading specs from /usr/local0/gcc-3.4.4/bin/../lib/gcc/i686-pc-linux-gnu/3.4.4/specs Configured with: ../configure --prefix=/usr/local/gcc-3.4.4 --enable-threads=posix --enable-version-specific-runtime-libs --enable-languages=c,c++,f77 Thread model: posix gcc version 3.4.4 /usr/local0/gcc-3.4.4/bin/../libexec/gcc/i686-pc-linux-gnu/3.4.4/cc1plus -E -quiet -v -iprefix /usr/local0/gcc-3.4.4/bin/../lib/gcc/i686-pc-linux-gnu/3.4.4/ -D_GNU_SOURCE t.cc -mtune=pentiumpro -o t.ii ignoring nonexistent directory "/usr/local0/gcc-3.4.4/bin/../lib/gcc/i686-pc-linux-gnu/3.4.4/../../../../i686-pc-linux-gnu/include" ignoring duplicate directory "/usr/local/gcc-3.4.4/lib/gcc/i686-pc-linux-gnu/3.4.4/include/c++" ignoring duplicate directory "/usr/local/gcc-3.4.4/lib/gcc/i686-pc-linux-gnu/3.4.4/include/c++/i686-pc-linux-gnu" ignoring duplicate directory "/usr/local/gcc-3.4.4/lib/gcc/i686-pc-linux-gnu/3.4.4/include/c++/backward" ignoring duplicate directory "/usr/local/gcc-3.4.4/lib/gcc/i686-pc-linux-gnu/3.4.4/include" ignoring nonexistent directory "/usr/local/gcc-3.4.4/lib/gcc/i686-pc-linux-gnu/3.4.4/../../../../i686-pc-linux-gnu/include" #include "..." search starts here: #include <...> search starts here: /usr/local0/gcc-3.4.4/bin/../lib/gcc/i686-pc-linux-gnu/3.4.4/include/c++ /usr/local0/gcc-3.4.4/bin/../lib/gcc/i686-pc-linux-gnu/3.4.4/include/c++/i686-pc-linux-gnu /usr/local0/gcc-3.4.4/bin/../lib/gcc/i686-pc-linux-gnu/3.4.4/include/c++/backward /usr/local0/gcc-3.4.4/bin/../lib/gcc/i686-pc-linux-gnu/3.4.4/include /usr/local/include /usr/local/gcc-3.4.4/include /usr/include End of search list. /usr/local0/gcc-3.4.4/bin/../libexec/gcc/i686-pc-linux-gnu/3.4.4/cc1plus -fpreprocessed t.ii -quiet -dumpbase t.cc -mtune=pentiumpro -auxbase t -version -o t.s GNU C++ version 3.4.4 (i686-pc-linux-gnu) compiled by GNU C version 3.4.4. GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 as -V -Qy -o t.o t.s GNU assembler version 2.15 (i386-linux) using BFD version 2.15 /usr/local0/gcc-3.4.4/bin/../libexec/gcc/i686-pc-linux-gnu/3.4.4/cc1plus -E -quiet -v -iprefix /usr/local0/gcc-3.4.4/bin/../lib/gcc/i686-pc-linux-gnu/3.4.4/ -D_GNU_SOURCE t1.cc -mtune=pentiumpro -o t1.ii ignoring nonexistent directory "/usr/local0/gcc-3.4.4/bin/../lib/gcc/i686-pc-linux-gnu/3.4.4/../../../../i686-pc-linux-gnu/include" ignoring duplicate directory "/usr/local/gcc-3.4.4/lib/gcc/i686-pc-linux-gnu/3.4.4/include/c++" ignoring duplicate directory "/usr/local/gcc-3.4.4/lib/gcc/i686-pc-linux-gnu/3.4.4/include/c++/i686-pc-linux-gnu" ignoring duplicate directory "/usr/local/gcc-3.4.4/lib/gcc/i686-pc-linux-gnu/3.4.4/include/c++/backward" ignoring duplicate directory "/usr/local/gcc-3.4.4/lib/gcc/i686-pc-linux-gnu/3.4.4/include" ignoring nonexistent directory "/usr/local/gcc-3.4.4/lib/gcc/i686-pc-linux-gnu/3.4.4/../../../../i686-pc-linux-gnu/include" #include "..." search starts here: #include <...> search starts here: /usr/local0/gcc-3.4.4/bin/../lib/gcc/i686-pc-linux-gnu/3.4.4/include/c++ /usr/local0/gcc-3.4.4/bin/../lib/gcc/i686-pc-linux-gnu/3.4.4/include/c++/i686-pc-linux-gnu /usr/local0/gcc-3.4.4/bin/../lib/gcc/i686-pc-linux-gnu/3.4.4/include/c++/backward /usr/local0/gcc-3.4.4/bin/../lib/gcc/i686-pc-linux-gnu/3.4.4/include /usr/local/include /usr/local/gcc-3.4.4/include /usr/include End of search list. /usr/local0/gcc-3.4.4/bin/../libexec/gcc/i686-pc-linux-gnu/3.4.4/cc1plus -fpreprocessed t1.ii -quiet -dumpbase t1.cc -mtune=pentiumpro -auxbase t1 -version -o t1.s GNU C++ version 3.4.4 (i686-pc-linux-gnu) compiled by GNU C version 3.4.4. GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 as -V -Qy -o t1.o t1.s GNU assembler version 2.15 (i386-linux) using BFD version 2.15 /usr/local0/gcc-3.4.4/bin/../libexec/gcc/i686-pc-linux-gnu/3.4.4/collect2 --eh-frame-hdr -m elf_i386 -dynamic-linker /lib/ld-linux.so.2 /usr/lib/crt1.o /usr/lib/crti.o /usr/local0/gcc-3.4.4/bin/../lib/gcc/i686-pc-linux-gnu/3.4.4/crtbegin.o -L/usr/local0/gcc-3.4.4/bin/../lib/gcc/i686-pc-linux-gnu/3.4.4 -L/usr/local0/gcc-3.4.4/bin/../lib/gcc -L/usr/local/gcc-3.4.4/lib/gcc/i686-pc-linux-gnu/3.4.4 -L/usr/local0/gcc-3.4.4/bin/../lib/gcc/i686-pc-linux-gnu/3.4.4/../../.. -L/usr/local/gcc-3.4.4/lib/gcc/i686-pc-linux-gnu/3.4.4/../../.. t.o t1.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/local0/gcc-3.4.4/bin/../lib/gcc/i686-pc-linux-gnu/3.4.4/crtend.o /usr/lib/crtn.o t1.o(.bss+0x0): multiple definition of `__gnu_cxx::_OOM_handler::_S_old_handler' t.o(.bss+0x0): first defined here t1.o(.bss+0x4): multiple definition of `__gnu_cxx::_OOM_handler::_S_handled_oom' t.o(.bss+0x4): first defined here t1.o(.bss+0x8): multiple definition of `__gnu_cxx::_OOM_handler::_S_oom_fcp' t.o(.bss+0x8): first defined here t1.o(.bss+0xc): multiple definition of `__gnu_cxx::_BA_free_list_store::_S_bfl_mutex' t.o(.bss+0xc): first defined here t1.o(.bss+0x24): multiple definition of `__gnu_cxx::_BA_free_list_store::_S_free_list' t.o(.bss+0x24): first defined here collect2: ld returned 1 exit status -- Summary: simply including ext/bitmap_allocator.h causes link-time errors Product: gcc Version: 3.4.4 Status: UNCONFIRMED Severity: critical Priority: P2 Component: libstdc++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: oms at home dot nl CC: gcc-bugs at gcc dot gnu dot org GCC build triplet: i686-pc-linux-gnu GCC host triplet: i686-pc-linux-gnu GCC target triplet: i686-pc-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21677