annotate run/static_03.d @ 0:3269e4627918

init dstress
author svnowner
date Sat, 25 Sep 2004 22:33:30 +0000
parents
children 3414705c41ac
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
3269e4627918 init dstress
svnowner
parents:
diff changeset
1 // $Header: /home/th/Dokumente/Entwicklung/MEIN_CVS/MiniD/src/run/static_03.d,v 1.1 2004/08/20 23:42:54 th Exp $
3269e4627918 init dstress
svnowner
parents:
diff changeset
2
3269e4627918 init dstress
svnowner
parents:
diff changeset
3 class MyClass{
3269e4627918 init dstress
svnowner
parents:
diff changeset
4 static int status;
3269e4627918 init dstress
svnowner
parents:
diff changeset
5 static void staticCheck(){
3269e4627918 init dstress
svnowner
parents:
diff changeset
6 status++;
3269e4627918 init dstress
svnowner
parents:
diff changeset
7 }
3269e4627918 init dstress
svnowner
parents:
diff changeset
8
3269e4627918 init dstress
svnowner
parents:
diff changeset
9 void liveCheck(){
3269e4627918 init dstress
svnowner
parents:
diff changeset
10 status--;
3269e4627918 init dstress
svnowner
parents:
diff changeset
11 }
3269e4627918 init dstress
svnowner
parents:
diff changeset
12
3269e4627918 init dstress
svnowner
parents:
diff changeset
13 void liveCheck2(){
3269e4627918 init dstress
svnowner
parents:
diff changeset
14 staticCheck();
3269e4627918 init dstress
svnowner
parents:
diff changeset
15 }
3269e4627918 init dstress
svnowner
parents:
diff changeset
16 }
3269e4627918 init dstress
svnowner
parents:
diff changeset
17
3269e4627918 init dstress
svnowner
parents:
diff changeset
18 int main(){
3269e4627918 init dstress
svnowner
parents:
diff changeset
19 MyClass a;
3269e4627918 init dstress
svnowner
parents:
diff changeset
20 MyClass b = new MyClass();
3269e4627918 init dstress
svnowner
parents:
diff changeset
21 a.staticCheck();
3269e4627918 init dstress
svnowner
parents:
diff changeset
22 assert( a.status == 1 );
3269e4627918 init dstress
svnowner
parents:
diff changeset
23 assert( b.status == 1 );
3269e4627918 init dstress
svnowner
parents:
diff changeset
24 assert( MyClass.status == 1 );
3269e4627918 init dstress
svnowner
parents:
diff changeset
25
3269e4627918 init dstress
svnowner
parents:
diff changeset
26 b.staticCheck();
3269e4627918 init dstress
svnowner
parents:
diff changeset
27 assert( a.status == 2 );
3269e4627918 init dstress
svnowner
parents:
diff changeset
28 assert( b.status == 2 );
3269e4627918 init dstress
svnowner
parents:
diff changeset
29 assert( MyClass.status == 2 );
3269e4627918 init dstress
svnowner
parents:
diff changeset
30
3269e4627918 init dstress
svnowner
parents:
diff changeset
31 MyClass.staticCheck();
3269e4627918 init dstress
svnowner
parents:
diff changeset
32 assert( a.status == 3 );
3269e4627918 init dstress
svnowner
parents:
diff changeset
33 assert( b.status == 3 );
3269e4627918 init dstress
svnowner
parents:
diff changeset
34 assert( MyClass.status == 3 );
3269e4627918 init dstress
svnowner
parents:
diff changeset
35
3269e4627918 init dstress
svnowner
parents:
diff changeset
36 b.liveCheck();
3269e4627918 init dstress
svnowner
parents:
diff changeset
37 assert( a.status == 2 );
3269e4627918 init dstress
svnowner
parents:
diff changeset
38 assert( b.status == 2 );
3269e4627918 init dstress
svnowner
parents:
diff changeset
39 assert( MyClass.status == 2 );
3269e4627918 init dstress
svnowner
parents:
diff changeset
40
3269e4627918 init dstress
svnowner
parents:
diff changeset
41 b.liveCheck2();
3269e4627918 init dstress
svnowner
parents:
diff changeset
42 assert( a.status == 3 );
3269e4627918 init dstress
svnowner
parents:
diff changeset
43 assert( b.status == 3 );
3269e4627918 init dstress
svnowner
parents:
diff changeset
44 assert( MyClass.status == 3 );
3269e4627918 init dstress
svnowner
parents:
diff changeset
45
3269e4627918 init dstress
svnowner
parents:
diff changeset
46 return 0;
3269e4627918 init dstress
svnowner
parents:
diff changeset
47 }