Bug#169161: libstdc++5: Questionable type usage in mangled names
Martin v. Loewis
Thu Nov 14 23:06:00 GMT 2002
Daniel Jacobowitz <email@example.com> writes:
> This should presumably be reported to GCC rather than to us...
> Libstdc++ folks, please maintain the CC's. Any thoughts?
GCC is clearly behaving correctly. typedefs are resolved before
mangling, since symbols that differ only in typedef usage must compare
I also can't see an error in libstdc++: if it uses the mbstate_t
definition of the C library (as it should), it cannot influence how
the mangled symbols will look like.
So if there is an error, it is either in glibc (for making the primary
name of the struct __mbstate_t), or in LSB (for not recognizing this
As a related note: if only the source standards were taken into
account, the symbol should be mangled as
std::codecvt<char, char, std::mbstate_t>::do_encoding() const
since mbstate_t is in namespace std, in C++.
More information about the Gcc-bugs