mainline AIX bootstrap broken in libstdc++-v3
David Edelsohn
dje@watson.ibm.com
Fri Mar 26 18:10:00 GMT 2004
AIX bootstrap currently is broken with the following mt_allocator
related error while compiling allocator.cc:
/gcc/dje/build/powerpc-ibm-aix5.1.0.0-20040325/powerpc-ibm-aix5.1.0.0/power/libstdc++-v3/include/ext/mt_allocator.h: In member function `typename __gnu_cxx::__mt_alloc<_Tp>::pointer __gnu_cxx::__mt_alloc<_Tp>::allocate(size_t, const void*) [with _Tp = char]':
/gcc/dje/src/libstdc++-v3/src/allocator.cc:43: instantiated from here
/gcc/dje/build/powerpc-ibm-aix5.1.0.0-20040325/powerpc-ibm-aix5.1.0.0/power/libstdc++-v3/include/ext/mt_allocator.h:408: error: 'union __gnu_cxx::__mt_alloc<char>::block_record' has no member named 'thread_id'
/gcc/dje/build/powerpc-ibm-aix5.1.0.0-20040325/powerpc-ibm-aix5.1.0.0/power/libstdc++-v3/include/ext/mt_allocator.h: In member function `void __gnu_cxx::__mt_alloc<_Tp>::deallocate(_Tp*, size_t) [with _Tp = char]':
/gcc/dje/src/libstdc++-v3/src/allocator.cc:43: instantiated from here
/gcc/dje/build/powerpc-ibm-aix5.1.0.0-20040325/powerpc-ibm-aix5.1.0.0/power/libstdc++-v3/include/ext/mt_allocator.h:439: warning: unused variable 'thread_id'
/gcc/dje/build/powerpc-ibm-aix5.1.0.0-20040325/powerpc-ibm-aix5.1.0.0/power/libstdc++-v3/include/ext/mt_allocator.h: In member function `typename __gnu_cxx::__mt_alloc<_Tp>::pointer __gnu_cxx::__mt_alloc<_Tp>::allocate(size_t, const void*) [with _Tp = wchar_t]':
/gcc/dje/src/libstdc++-v3/src/allocator.cc:44: instantiated from here
/gcc/dje/build/powerpc-ibm-aix5.1.0.0-20040325/powerpc-ibm-aix5.1.0.0/power/libstdc++-v3/include/ext/mt_allocator.h:408: error: 'union __gnu_cxx::__mt_alloc<wchar_t>::block_record' has no member named 'thread_id'
/gcc/dje/build/powerpc-ibm-aix5.1.0.0-20040325/powerpc-ibm-aix5.1.0.0/power/libstdc++-v3/include/ext/mt_allocator.h: In member function `void __gnu_cxx::__mt_alloc<_Tp>::deallocate(_Tp*, size_t) [with _Tp = wchar_t]':
/gcc/dje/src/libstdc++-v3/src/allocator.cc:44: instantiated from here
/gcc/dje/build/powerpc-ibm-aix5.1.0.0-20040325/powerpc-ibm-aix5.1.0.0/power/libstdc++-v3/include/ext/mt_allocator.h:439: warning: unused variable 'thread_id'
make[7]: *** [allocator.lo] Error 1
This demonstrates two separate problems.
1) AIX uses new_allocator (config output
ALLOCATOR_H='config/allocator/new_allocator_base.h'
ALLOCATOR_NAME='__gnu_cxx::new_allocator')
but the failure references mt_allocator. Are all allocators compiled even
when not used?
2) allocator compiled properly for the AIX pthread multilibs, but failed
with the first non-pthread multilib. Some new reference to thread_id was
not protected by #ifdef __GTHREADS .
David
More information about the Gcc
mailing list