This is the mail archive of the binutils@sourceware.cygnus.com mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: binutils development (was Re: Problems building binutils-000220 snapshot)


"H . J . Lu" wrote:

> BTW, I don't think the current demangler scheme in binutils works very
> well. The problem is the mangling scheme in compiler changes over time.
> I don't think binutils can keep up with it. Instead, each compiler
> should provide its down demangler.so so that binutils can have a chance
> to correctly demangle the mangled symbol. The builtin demangler in
> binutils should be used as the last resort.
>
> H.J.

Yes, definitely. I'm the Compaq guy that was very greatful to H.J. for
adding the dlopen support. The demangler is a function of the compiler, not
binutils. Everytime I upgrade my compiler, I should not have to also
upgrade binutils and gdb also, unless I really have to. When was the last
release of binutils anway?

We had the same problem with our own version of nm, stdump, etc on Tru64.
We continue to release versions of the C++ compiler, but
the binutils ship as part of the base OS and nobody wants to upgrade the OS
every time they upgrade the compiler. We solved this problem in 4.0G and
5.0A or later using the same technique, drop a new demangler.so everytime
we install a new compiler. The tools look for this library, if they cannot
find it, they use it the default demangler.

| I'm not a gcc maintainer, so it's not my call.  But surely Compaq does
| not consider their C++ mangling scheme to be a secret.  You can't even
| keep such a thing a secret.  Why don't they just provide the source
| for their demangler, so that it can be incorporated into cplus-dem.c?

No, our mangling is not secret, nor do we consider that the code gives
us a competitive advantage. We want to release the code, unfortunately,
it is of questionable origin.  We are not sure if we wrote this code
completely
ourselves or if the code was derived from code we licensed from somebody
else. If it is the later, we cannot legally release the code.

We are working on releasing this code and are looking at a different code
base
that we can release. Longer term we are looking at GCC and our mangling
as converging, eliminating the need for our demangler all together.
begin:vcard 
n:Block;Kenneth
x-mozilla-html:FALSE
org:CTG C/C++ Compiler
version:2.1
email;internet:block@zk3.dec.com
adr;quoted-printable:;;110 Spit Brook Road=0D=0AM/S ZKO3-2/W02;Nashua;NH;03062;USA
x-mozilla-cpt:;0
tel;work:603-884-2819
fn:Kenneth Block
end:vcard

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]