On 2011-02-13 07:52, Nick Sabalausky wrote:
"golgeliyele"<[email protected]>  wrote in message
The error reporting has issues as well. I noticed that the compiler leaks
low level errors to the user. If you forget to add a main to your
app or misspell it, you get errors like:
====
Undefined symbols:
  "__Dmain", referenced from:
      _D2rt6dmain24mainUiPPaZi7runMainMFZv in
libphobos2.a(dmain2_513_1a5.o)
====
I mean, wow, this should really be handled better.


That's not the compiler, that's the linker. I don't know what linker DMD
uses on OSX, but on Windows it uses OPTLINK which is written in
hand-optimized Asm so it's really hard to change. But Walter's been
converting it to C (and maybe then to D once that's done) bit-by-bit (so to
speak), so linker improvements are at least on the horizon.

AIUI, on Linux, DMD just uses the GCC linker, and GCC unfortunately doesn't
know anything about D name mangling, just C/C++.  Might be true of OSX as
well, I don't know though.

As you know, on Windows DMD uses OPTLINK and on all other platforms GCC is used.

--
/Jacob Carlborg

Reply via email to