[cxx-abi-dev] substitution for std::char_traits<char> in mangled name issue

Mark Mitchell mark at codesourcery.com
Tue Oct 1 03:59:27 UTC 2002


> The reason I question this substitution schema in the name mangling is
> because when I  changed the namespace std to stdd then I got :
> _ZN4stdd13basic_ostreamIcNS_11char_traitsIcEEElsEPFRNS_9basic_iosIcS2_EES
> 6_E which indicates that stdd::char_traits<char> has been substituted
> with S2_ but why std::char_traits<char> is not substituted in the case
> with std namespace?  Is this a nonconformance to API spec or there is a
> special encoding for std::char_traits<char>?

Because there is a special substitution for std::ostream, the template
parameters of std::ostream are not included in the substitution map.

Therefore, G++ is correct in this respect.

-- 
Mark Mitchell                mark at codesourcery.com
CodeSourcery, LLC            http://www.codesourcery.com



More information about the cxx-abi-dev mailing list