digitalmars.D.bugs - [Issue 1209] New: static class constructor not called
- d-bugmail puremagic.com (33/33) May 01 2007 http://d.puremagic.com/issues/show_bug.cgi?id=1209
- d-bugmail puremagic.com (13/13) May 20 2007 http://d.puremagic.com/issues/show_bug.cgi?id=1209
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 01 2007
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 # --
May 20 2007