Some uglifications are missing from current implementations of the standard library
How to repeat: % cat l.C && g++ l.C #define hook 1 #define unhook 0 #include <list> int main() { return 0; } /home/gdr/lib/gcc/i686-pc-linux-gnu/4.0.0/../../../../include/c++/4.0.0/bits/stl_list.h:90: error: expected unqualified-id before numeric constant /home/gdr/lib/gcc/i686-pc-linux-gnu/4.0.0/../../../../include/c++/4.0.0/bits/stl_list.h:93: error: expected unqualified-id before numeric constant /home/gdr/lib/gcc/i686-pc-linux-gnu/4.0.0/../../../../include/c++/4.0.0/bits/stl_list.h: In member function 'void std::list<_Tp, _Alloc>::_M_insert(std::_List_iterator<_Tp>, const _Tp&)': /home/gdr/lib/gcc/i686-pc-linux-gnu/4.0.0/../../../../include/c++/4.0.0/bits/stl_list.h:1150: error: expected unqualified-id before numeric constant /home/gdr/lib/gcc/i686-pc-linux-gnu/4.0.0/../../../../include/c++/4.0.0/bits/stl_list.h:1150: error: expected `;' before numeric constant /home/gdr/lib/gcc/i686-pc-linux-gnu/4.0.0/../../../../include/c++/4.0.0/bits/stl_list.h: In member function 'void std::list<_Tp, _Alloc>::_M_erase(std::_List_iterator<_Tp>)': /home/gdr/lib/gcc/i686-pc-linux-gnu/4.0.0/../../../../include/c++/4.0.0/bits/stl_list.h:1157: error: expected unqualified-id before numeric constant /home/gdr/lib/gcc/i686-pc-linux-gnu/4.0.0/../../../../include/c++/4.0.0/bits/stl_list.h:1157: error: expected `;' before numeric constant /home/gdr/lib/gcc/i686-pc-linux-gnu/4.0.0/../../../../include/c++/4.0.0/bits/list.tcc: In member function 'typename std::list<_Tp, _Alloc>::iterator std::list<_Tp, _Alloc>::insert(std::_List_iterator<_Tp>, const _Tp&)': /home/gdr/lib/gcc/i686-pc-linux-gnu/4.0.0/../../../../include/c++/4.0.0/bits/list.tcc:88: error: expected unqualified-id before numeric constant /home/gdr/lib/gcc/i686-pc-linux-gnu/4.0.0/../../../../include/c++/4.0.0/bits/list.tcc:88: error: expected `;' before numeric constant -- Summary: libstdc++ tempers with user name space Product: gcc Version: 4.0.0 Status: UNCONFIRMED Severity: normal Priority: P2 Component: libstdc++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: gdr at gcc dot gnu dot org CC: gcc-bugs at gcc dot gnu dot org GCC host triplet: plateform independent http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19209