Binutils 2.25 Released - New D demangling support

Iain Buclaw via Digitalmars-d-announce digitalmars-d-announce at puremagic.com
Tue Jan 13 14:04:05 PST 2015


On 13 January 2015 at 21:39, Kiith-Sa via Digitalmars-d-announce
<digitalmars-d-announce at puremagic.com> wrote:
> On Tuesday, 13 January 2015 at 21:31:15 UTC, Iain Buclaw wrote:
>>
>> Hi,
>>
>> I'm not sure when it was announced, but binutils 2.25 has been released!
>> There's a small reason for excitement as it is the first to come with D
>> demangling support in the GNU toolchain.
>>
>> Unfortunately, I forgot to send in patches that actually document it!  So
>> for the moment, it's a little secret feature shared between all who may read
>> this.  :o)
>>
>>
>> How do you use it?
>> ---
>>
>> By default, binutils programs will treat all mangled symbols as C++,
>> however you can override this by using --demangle=dlang, eg:
>>
>>   objdump -d --demangle=dlang prog.o
>>
>>   nm --demangle=dlang ddmd
>>
>>
>> You can also kickstart your usage by putting -L--demangle=dlang in your
>> dmd.conf, and watch your obscure linker errors turn into pretty function
>> signatures.
>
>
> Could you add this note somewhere visible into the wiki so it doesn't get
> lost?
>
> Also, could DMD do this by default if available so it works out of the box?

This can be done, but I'd rather it be added later instead of now when
it is more likely that the reader is running a system that has
binutils 2.25+ installed.

For having this as default dmd.conf setting in future DMD releases,
there will have to be an even longer waiting period of at least a year
and a bit before it gets added.  This will allow users to upgrade to
their systems to a version of binutils which supports this feature,
otherwise you are risking (in their eyes) breaking DMD with no obvious
good reason.

The auto-tester build systems will need to be upgraded also...

Iain.


More information about the Digitalmars-d-announce mailing list