On 2015-03-31 11:08, Johannes Pfau wrote:

But here's the problem:

1) The compile time approach requires some kind
    of explicit registration of the unittests. At least one mixin per
    module.
2) This mixin will usually provide a module constructor. But
    using module constructors will cause issues with cycle detection.

When we get RTInfo for modules [1] there shouldn't be any problems. A template will be instantiated once for each module the compiler sees. With that module __traits(getUnitTests) and __traits(allMembers) can be used to access the unit tests, benchmarks, or whatever. Not need for any registration or module constructors.

[1] https://github.com/D-Programming-Language/dmd/pull/2271

--
/Jacob Carlborg

Reply via email to