OPTLINK needs to die.

Jarrett Billingsley jarrett.billingsley at gmail.com
Mon Feb 16 20:23:08 PST 2009


On Mon, Feb 16, 2009 at 11:08 PM, Walter Bright
<newshound1 at digitalmars.com> wrote:
>
> But I downloaded the offending obj file from bugzilla, and it links and runs
> without error:
>
> http://d.puremagic.com/issues/show_bug.cgi?id=2436
>

http://d.puremagic.com/issues/show_bug.cgi?id=424

is *much* older, and you already seem to have classed it as unfixable.
 It's the "too many fixups" bug (although instead of popping up a
message to that effect OPTLINK just unhelpfully crashes and dumps its
registers).  This is the one that bites me all the time.  I'm not
doing terribly uncommon or large things.  Even something like Pyd is
liable to kill OPTLINK with relatively small wrappings.

Splitting code across multiple modules _sometimes_ helps and
_sometimes_ does not.  Besides being a crude workaround it's sometimes
much more difficult than it sounds (because as we all know, DMD does
*not* like circular imports, and sometimes massive modules are the
result of working around _that_ bug).  -g affects it as it's now
generating lots of extra debug symbols, pushing the number of fixups
up.  There's no way to tell how many symbols I'm generating and I
shouldn't _have_ to worry about that kind of crap.

Worst of all, DMDWin is the *only* compiler with these problems.  So
I'm doing all this work to get around bugs in a single compiler on a
single platform.  It makes me want to just abandon it.

Do you think that with the new uber-templated Phobos2 that the problem
is going to be getting any better?



More information about the Digitalmars-d mailing list