<div class="gmail_extra"><div class="gmail_quote">On 16 December 2012 02:53, Iain Buclaw <span dir="ltr"><<a href="mailto:ibuclaw@ubuntu.com" target="_blank">ibuclaw@ubuntu.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div class="gmail_extra"><div><div class="h5"><div class="gmail_quote">On 15 December 2012 18:52, Jonathan M Davis <span dir="ltr"><<a href="mailto:jmdavisProg@gmx.com" target="_blank">jmdavisProg@gmx.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div>On Saturday, December 15, 2012 10:44:56 H. S. Teoh wrote:<br>
> Isn't that just some compiler bugs that sometimes cause certain symbols<br>
> not to be instantiated in the object file? IMO, such bugs should be<br>
> fixed in the compiler, rather than force the user to compile one way or<br>
> another.<br>
<br>
</div>Well obviously. They're bugs. Of course they should be fixed. But as long as<br>
they haven't been fixed, we have to work around them, which means compiling<br>
everything at once.<br>
<span><font color="#888888"><br>
- Jonathan M Davis<br>
</font></span></blockquote></div><br><br></div></div>Probably won't be easy (if bug still exists).  To describe it (I'll try to find a working example later) - when compiled separately, both modules claim the symbol is extern to their scope.  However when compiled under one compilation unit, the compiler has substantially more information regarding the symbol and sends it to the backend to be written.<br clear="all">
</div></blockquote><div><br>Respective bugs, all been open for around 3 years.<br><br><a href="http://d.puremagic.com/issues/show_bug.cgi?id=3745">http://d.puremagic.com/issues/show_bug.cgi?id=3745</a><br><a href="http://d.puremagic.com/issues/show_bug.cgi?id=3770">http://d.puremagic.com/issues/show_bug.cgi?id=3770</a><br>
<br></div></div><br>-- <br>Iain Buclaw<br><br>*(p < e ? p++ : p) = (c & 0x0f) + '0';<br>
</div>