Why is mangling different for separate compilation?
Jacob Carlborg via Digitalmars-d
digitalmars-d at puremagic.com
Sun Feb 28 23:22:45 PST 2016
On 2016-02-28 22:03, Chris Wright wrote:
> Or like there's a global counter that is incremented for each unittest. A
> different order of traversal of unittests would result in a different
> mangled name for the same unittest in different runs.
The question is why it would be different.
Here's a guess:
* The compiler will perform semantic analysis of the code in the current
module before processing any imports
* It will also process all files on the command line before processing
any imports
* The compiler will process object.d before processing any other imports
That would mean in the case when compiling foo.d during separate
compilation it would process object.d before processing bar.d. That
would mean the compiler is processing a lot unittest blocks through
object.d and its imports before processing the unittest block in bar.d.
--
/Jacob Carlborg
More information about the Digitalmars-d
mailing list