[phobos] improved module cycle detection algorithm finds existing cycle in phobos, what to do?

Steve Schveighoffer schveiguy at yahoo.com
Fri Nov 5 09:02:59 PDT 2010


Well, I don't think my algorithm's broken, I think the compiler is doing 
something strange.

When building the unit test for std.encoding, the module std.encoding is listed 
as having shared ctors/dtors, and is not marked as standalone.

When building the unit test for std.random, the module std.encoding is listed as 
*not* having shared ctors/dtors.  However, there are 6 modules named like:

encoding.64
encoding.65
encoding.66
encoding.67
encoding.68
encoding.69

Which are all marked as having shared ctors/dtors, *but* also marked as 
standalone.

Why is the compiler doing something different if you are compiling unit tests 
for a given module?  And to me, it looks like the module should have 
non-standalone ctors/dtors (it has 6 classes which have a shared static this).

Any clues?

-Steve



      


More information about the phobos mailing list