http://d.puremagic.com/issues/show_bug.cgi?id=6167
Denis Shelomovskij <verylonglogin....@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED CC| |verylonglogin....@gmail.com Resolution| |DUPLICATE --- Comment #3 from Denis Shelomovskij <verylonglogin....@gmail.com> 2012-10-26 15:45:47 MSD --- Reduced testcase: --- import std.stdio; struct Struct { int dummy, count = 0; this(int dummy) { writefln(" this(dummy = %s): count: %s", this.dummy = dummy, ++count); } ~this() { writefln("~this(dummy = %s): count: %s", dummy, --count); } static Struct getWithDummy2() { return Struct(2); } } static Struct neverCalled() { assert(0); } void lazyFun(lazy Struct exp) { } void main() { Struct var = Struct(1); (){ return var.getWithDummy2(); }(); lazyFun(neverCalled()); } --- Output: --- this(dummy = 1): count: 1 this(dummy = 2): count: 1 ~this(dummy = 2): count: 0 ~this(dummy = 10366848): count: 4203019 ~this(dummy = 1): count: 0 --- So this is a duplicate of Issue 8182 which is fixed in dmd 2.060. *** This issue has been marked as a duplicate of issue 8182 *** -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------