This is the mail archive of the
libstdc++@gcc.gnu.org
mailing list for the libstdc++ project.
Re: EEEEKS! The mangling changed!
- From: Gabriel Dos Reis <gdr at integrable-solutions dot net>
- To: libstdc++ at gcc dot gnu dot org
- Date: 30 Nov 2003 03:26:21 +0100
- Subject: Re: EEEEKS! The mangling changed!
- Organization: Integrable Solutions
- References: <20031130021827.GA20476@alinoe.com>
Carlo Wood <carlo@alinoe.com> writes:
| To my absolute horror I found today that a simple 'std::vector' is
| suddenly mangled as '__gnu_norm::vector'.
This happened a while ago as a side effect of the debug-mode work.
| That makes it nearly unrecognizable and at least questionably whenever it is
| demangled by which-ever debugging tool. When the programmer uses "std::"
| he wants it to BE "std::"
No. The programmer has absolutely no control over what is in std::.
When he/she says std::, he/she gets whatever name lookup happen to
find there.
| and that means that the abbreviation / compression
| 'St' is used in the mangled name, that was especially added even - in order
| to change the long and memory consuming 3std into just St.
Not everything in std:: gets resolved to __gnu_norm::. You might want
to consult the documentation relating that work. Things that are
really defined in std are still mangled as before.
-- Gaby