May 01, 2007 [Issue 1209] New: static class constructor not called | ||||
---|---|---|---|---|
| ||||
http://d.puremagic.com/issues/show_bug.cgi?id=1209 Summary: static class constructor not called Product: D Version: 1.014 Platform: PC OS/Version: Windows Status: NEW Severity: normal Priority: P2 Component: DMD AssignedTo: bugzilla@digitalmars.com ReportedBy: leo.dahlmann@gmail.com In the following code the static constructor of Foo is not called and thus the assert in main fails. If you replace this() with static this() it works. I think, because this() is inside a static block, it should be static. ################################################################# uint x = 0; class Foo { static { this() { x++; } } } void main() { assert(x == 1); } -- |
May 20, 2007 [Issue 1209] static class constructor not called | ||||
---|---|---|---|---|
| ||||
Posted in reply to d-bugmail | http://d.puremagic.com/issues/show_bug.cgi?id=1209 thomas-dloop@kuehne.cn changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |INVALID ------- Comment #1 from thomas-dloop@kuehne.cn 2007-05-20 13:11 ------- http://www.digitalmars.com/d/class.html : # # The static in the static constructor declaration is not an # attribute, it must appear immediately before the this # -- |
Copyright © 1999-2021 by the D Language Foundation