// 2003-02-26 Carlo Wood // Copyright (C) 2003, 2009 Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free // software; you can redistribute it and/or modify it under the // terms of the GNU General Public License as published by the // Free Software Foundation; either version 3, or (at your option) // any later version. // This library is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // You should have received a copy of the GNU General Public License along // with this library; see the file COPYING3. If not see // . // IA 64 C++ ABI - 5.1 External Names (a.k.a. Mangling) #include // libcwd tests int main() { using namespace __gnu_test; /* namespace std { template class __default_alloc_template { }; template class string_char_traits { }; template struct _Alloc_traits { static char _S_instanceless; }; template char _Alloc_traits::_S_instanceless; } namespace libcw { namespace debug { namespace _private_ { template class allocator_adaptor { }; } } } char x; void q(void) { std::_Alloc_traits< std::basic_string< char, std::string_char_traits, libcw::debug::_private_::allocator_adaptor< char, std::__default_alloc_template, true > >, libcw::debug::_private_::allocator_adaptor< std::basic_string< char, std::string_char_traits, libcw::debug::_private_::allocator_adaptor< char, std::__default_alloc_template, true > >, std::__default_alloc_template, true > > dummy1; x = dummy1._S_instanceless; } */ // cplus-dem FAIL verify_demangle("_ZNSt13_Alloc_traitsISbIcSt18string_char_traitsIcEN5libcw5debug9_private_17allocator_adaptorIcSt24__default_alloc_templateILb0ELi327664EELb1EEEENS5_IS9_S7_Lb1EEEE15_S_instancelessE","std::_Alloc_traits, libcw::debug::_private_::allocator_adaptor, true> >, libcw::debug::_private_::allocator_adaptor, libcw::debug::_private_::allocator_adaptor, true> >, std::__default_alloc_template, true> >::_S_instanceless"); return 0; }