FYI: A new C++ demangler
Andrew Cagney
ac131313@redhat.com
Thu Jul 10 21:17:00 GMT 2003
> "H. J. Lu" <hjl@lucon.org> writes:
>
>
>> I will put a new C++ demangler in Linux binutils, which should fix all
>> known bugs in the old demangler. It is written in C++. It will be
>> enabled only if there is a working C++ compiler. Otherwise, the old
>> demangler will be used.
>
>
> Having read the discussion on the GCC mailing list, I am convinced it
> is undesirable to have two demanglers that have overlapping
> functionaility for GDB, especially if the demangler is selected based
> on the build environment as you propose.
>
> GDB should be buildable by a ISO C90 compiler, so we can't use C++ for
> any of its "standard" parts.
>
> I could live with making the demangler "optional", and removing the
> old demangler completely. But only if the new demangler is a major
> improvement over the old one (which I can't judge).
GDB can't :-(
> Could someone fix the old demangler, or write a new one in
> plain C (or re-write the C++ one in C)? Pretty please?
Yes. There's no reason for the underlying demangler algorithm to be
implemented in vanila ISO C 90, and then wrap it for the C++ side.
HJ, as a start why not separate out and submit these new tests you
refered to? Knowing what's broken is a good starting point.
Andrew
More information about the Binutils
mailing list