Iain Buclaw Posted in reply to Kiith-Sa



Permalink Reply

On 13 January 2015 at 21:39, Kiith-Sa via Digitalmars-d-announce <digita lmars-d- announce@ 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.