What's the current state of D?

Leandro Lucarella llucax at gmail.com
Sun May 10 09:40:43 PDT 2009


Brad Roberts, el  9 de mayo a las 21:42 me escribiste:
> Leandro Lucarella wrote:
> > Brad Roberts, el  9 de mayo a las 12:31 me escribiste:
> >> If there's things that need to change in what the compiler emits, Walter has
> >> shown himself to be willing to rapidly change them where the required changes
> >> are clearly described in terms of both 'what' and 'why'.  In other words, "it's
> >> broken" isn't sufficient but "if the frobble was changed to frobnosticator for
> >> each wobble, it would work" results in the next release having that change made.
> > 
> > BTW, here is something that should be fixed in the compiler to improve GNU
> > binutils support =)
> > http://d.puremagic.com/issues/show_bug.cgi?id=2932
> > 
> 
> A great illustration of a less than ideal bug report.  "A tool breaks in some
> way, fix the compiler."  It's entirely possible that dmd is producing the wrong
> thing, but there's an definite lack of specificity about what's wrong on the
> compiler side.  Those errors are coming out of the linker.  It's not even
> particularly clear that the bug is with dmd and not the new linker (one that's
> not shipped as the default linker on any distribution yet, unless I've lost
> track again).

No, it's not (it's shipped but not as the default linker), because they
are making sure that it works well with other tools. Usually when you use
a tool that is a de facto standard and have some bug, people start relying
in that bug as a feature. I know I had some linking bugs because of this,
and I spotted them thanks to Gold. I'm not saying that Gold is perfect,
but since it's a complete rewrite there are some bugs fixed (or things
where is more strict than the old GNU ld) that should be adjusted to work
well with the new linker.

I reported the bug because I think that could be the case. If is not, it's
a Gold bug and it should be reported. If it is, it should be fixed in DMD.
I don't have the knowlegde to check that myself, and that's why I reported
the bug to both tools.

> In other words, it's not at all surprising to me that the bug report
> hasn't received a lot of attention yet.

So you are saying you have to be a compiler hacker to report a bug? Great,
that make sense!

I think the error message is pretty clear (the ELF header size is supposed
to be wrong). I think somebody that know the compiler can check if this
bug report is right or if it's a bug in GNU Gold in a couple of minutes
(maybe seconds). And BTW GDC and LDC works just fine. I guess you can
argue that GDC uses the GCC backend which can be tightly coupled with GNU
binutils being both a GNU product, but LDC is not. So the bug report has
a high probability to be right, I wasn't saw the error message and run to
the D bugzilla to report the bug, I tested other tools first, and from my
own experience with Gold, when it said there was an error and I thought
the error was in Gold, I was wrong and Gold was right (because what I said
before, I was relying on some bugs in the old GNU ld), so I have some
degree of confidence in that Gold is not a piece of crap full of bugs.

And you may take a look to the GNU Gold linker bug report:
http://sourceware.org/bugzilla/show_bug.cgi?id=10126

It is having attention. That's why GNU tools are widely used and D isn't.
This kind of things make very sad...

-- 
Leandro Lucarella (luca) | Blog colectivo: http://www.mazziblog.com.ar/blog/
----------------------------------------------------------------------------
GPG Key: 5F5A8D05 (F8CD F9A7 BF00 5431 4145  104C 949E BFB6 5F5A 8D05)
----------------------------------------------------------------------------
VECINOS RESCATARON A CABALLITO ATROPELLADO
	-- Crónica TV



More information about the Digitalmars-d mailing list