On Thursday, 10 November 2016 at 13:58:56 UTC, Steven
Schveighoffer wrote:
This is not possible. Old behavior DID detect some cycles. The
new algorithm detects ALL cycles, and handles them all in the
same way. What you are asking is for cycles detected by old
algorithm to fail, but ones that wouldn't have been detected to
pass. Not to mention that the order of ctor execution is not
guaranteed to be the same (i.e. some latent bug may be hiding
there).
Only possibility is just to ignore ALL cycles, and print them
if any are detected.
I presume I have to look for commits that implement
http://dlang.org/changelog/2.072.0.html#drt-oncycle to fixup
this?
The PR for this was here:
https://github.com/dlang/druntime/pull/1668
Thanks! I'll have to check the code first :)