Somehow we still manage to break the bootstrap, even at the end of stage3:
/files/pfeifer/OBJ-0902-2308/./gcc/xgcc -shared-libgcc
-B/files/pfeifer/OBJ-0902-2308/./gcc -nostdinc++
-L/files/pfeifer/OBJ-0902-2308/i386-unknown-freebsd5.4/libstdc++-v3/src
-L/files/pfeifer/OBJ-0902-2308/i386-unknown-freebsd5.4/libstdc++-v3/src/.libs
-B/sw/gcc-current/i386-unknown-freebsd5.4/bin/
-B/sw/gcc-current/i386-unknown-freebsd5.4/lib/ -isystem
/sw/gcc-current/i386-unknown-freebsd5.4/include -isystem
/sw/gcc-current/i386-unknown-freebsd5.4/sys-include
-I/files/pfeifer/OBJ-0902-2308/i386-unknown-freebsd5.4/libstdc++-v3/include/i386-unknown-freebsd5.4
-I/files/pfeifer/OBJ-0902-2308/i386-unknown-freebsd5.4/libstdc++-v3/include
-I/sw/test/gcc/trunk/libstdc++-v3/libsupc++ -fno-implicit-templates -Wall
-Wextra -Wwrite-strings -Wcast-qual -fdiagnostics-show-location=once
-ffunction-sections -fdata-sections -g -O2 -c
/sw/test/gcc/trunk/libstdc++-v3/src/mt_allocator.cc -fPIC -DPIC -o
.libs/mt_allocator.o
/sw/test/gcc/trunk/libstdc++-v3/src/mt_allocator.cc: In member function 'void
__gnu_cxx::__pool<true>::_M_reclaim_block(char*, size_t)':
/sw/test/gcc/trunk/libstdc++-v3/src/mt_allocator.cc:278: error: expected
unqualified-id before '=' token
/sw/test/gcc/trunk/libstdc++-v3/src/mt_allocator.cc:292: error: expected
primary-expression before '__attribute__'
/sw/test/gcc/trunk/libstdc++-v3/src/mt_allocator.cc:292: error: expected `)'
before '__attribute__'
/sw/test/gcc/trunk/libstdc++-v3/src/mt_allocator.cc:293: error: expected
primary-expression before '__attribute__'
/sw/test/gcc/trunk/libstdc++-v3/src/mt_allocator.cc:293: error: expected `;'
before '__attribute__'
gmake[4]: *** [mt_allocator.lo] Error 1
gmake[4]: Leaving directory
`/files/pfeifer/OBJ-0902-2308/i386-unknown-freebsd5.4/libstdc++-v3/src'
gmake[3]: *** [all-recursive] Error 1
gmake[3]: Leaving directory
`/files/pfeifer/OBJ-0902-2308/i386-unknown-freebsd5.4/libstdc++-v3'
I don't see this on GNU/Linux, though, just FreeBSD 5.x.
Timing (this started some 36 hours ago) and the position in the code
indicate that this might be related to the following:
2006-09-02 Paolo Carlini <[EMAIL PROTECTED]>
Richard Guenther <[EMAIL PROTECTED]>
PR libstdc++/24469
* src/mt_allocator.cc (__pool<true>::_M_reserve_block,
__pool<true>::_M_reclaim_block): Fix the logic to avoid
races, exploit atomic counters stored in second part of
the memory pointed by _M_used.
(__pool<true>::_M_initialize): Adjust _M_used allocation.
* include/ext/mt_allocator.h (__pool<true>::_Bin_record):
Update comment.
Gerald