This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug libstdc++/12873] __cxa_demangle not working as specified in 3.3.2 ABI
- From: "carlo at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 2 Nov 2003 02:21:55 -0000
- Subject: [Bug libstdc++/12873] __cxa_demangle not working as specified in 3.3.2 ABI
- References: <20031102000516.12873.rmerkert@alphatech.com>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
PLEASE REPLY TO gcc-bugzilla@gcc.gnu.org ONLY, *NOT* gcc-bugs@gcc.gnu.org.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=12873
carlo at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Ever Confirmed| |1
Last reconfirmed|0000-00-00 00:00:00 |2003-11-02 02:21:55
date| |
------- Additional Comments From carlo at gcc dot gnu dot org 2003-11-02 02:21 -------
The demangler in 3.4 is a complete rewrite, it cannot be
back ported. What needs to be fixed here is that the
__cxa_demangle implementation in 3.3
1) Doesn't take the string length of the input into account
(ie, it demangles what it can and ignores any trailing
characters). It should fail if any characters are trailing.
2) A single character should NOT be considered to be a mangled
type name (a builtin-type) - but returned as-is.
Instead, it demangles the 'h' and ignores the rest.
I am afraid I have no time to write patches for the 3.3 branch,
but I am sure this would be a small patch.