Mercurial > projects > dstress
diff run/constructor_10.d @ 338:1f6cf5ccfbc9
1) updated rules to dmd-0.119
2) added __DSTRESS_ELINE__ tags
author | thomask |
---|---|
date | Mon, 21 Mar 2005 20:45:57 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/run/constructor_10.d Mon Mar 21 20:45:57 2005 +0000 @@ -0,0 +1,43 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// Static constructors within a module are executed in the lexical order in which they appear. + +module dstress.run.constructor_10; + +bool init; +bool initA; +bool initB; + +static this(){ + assert(!init); + assert(!initA); + assert(!initB); + init=true; +} + +class B{ + static this(){ + assert(init); + assert(!initA); + assert(!initB); + initB=true; + } +} + +class A{ + static this(){ + assert(init); + assert(!initA); + assert(initB); + initA=true; + } +} + +int main(){ + assert(init); + assert(initA); + assert(initB); + return 0; +}