OPTLINK needs to die.
Walter Bright
newshound1 at digitalmars.com
Tue Feb 17 04:16:35 PST 2009
Tom S wrote:
> So it seems that Main.d would have to reference symbols from each module
> in the program. Ouch.
I found that problem, and fixed it.
> Additionally, using such an approach breaks any possibility to use
> incremental compilation.
It depends. If instead of a.obj, b.obj, and c.obj, think a.lib, b.lib,
c.lib, you can incrementally compile.
> So there's also the option of having a .lib per
> .d file and linking that all together. So I've just tried it:
> dmd -c Main.d
> dmd -lib Mod.d
> dmd -lib Mod2.d
> dmd Main.obj Mod.lib Mod2.d
> ... and OPTLINK crashed with the familiar MsgBox containing register
> values.
Can't repro it. I'm pretty sure it has something to do with how
threading works on newer processors (mine is old).
Vendor string: GenuineIntel
Processor string: Intel(R) Pentium(R) 4 CPU 1.60GHz
Signature: Family=15 Model=1 Stepping=2
Features: MMX FXSR SSE SSE2 HTT
Multithreading: 1 threads / 1 cores
What's your CPU?
> While we're at incremental compilation, this bug:
> http://d.puremagic.com/issues/show_bug.cgi?id=1629 often kills it for me
> and it's been around for a few whiles already.
Ok.
More information about the Digitalmars-d
mailing list