[dmd-internals] Windows DMD development is now impossible

Don Clugston dclugston at gmail.com
Sat Jun 8 11:12:43 PDT 2013


With win32, I can no longer run unittests:
------------------
dmd -O -w -d -property -L/co -c -unittest -ofunittest5.obj std\algorithm.d
Error: out of memory
------------------
This has happened many times before, and we dealt with it by reducing the
number of modules we compiled into each object file.  We once had 30
modules per obj file. Then fifteen. Then five. But now we're at one, that
workaround can no longer be used.
The idea that we can continue to throw billions of templates and imports
into every Phobos module, is leading us towards catastrophe.

Sure, you can say, the compiler should improve its memory management. But I
don't think that's really the problem. If it was better, then compiler
might not run out of memory, but it would run unusably slowly. I think most
people have no idea of just how many templates the compiler is being asked
to instantiate.
Every import has a cost, and that cost is far from zero.

I'm stuck, and I don't know what to do.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puremagic.com/pipermail/dmd-internals/attachments/20130608/3f0d500f/attachment.html>


More information about the dmd-internals mailing list