annotate run/auto_04.d @ 799:c67acdbaf88e

Sean Kelly <sean@f4.ca> 2006-01-24 news:dr5uqg$2hn7$1@digitaldaemon.com
author thomask
date Wed, 25 Jan 2006 08:03:40 +0000
parents a33ad7189d21
children 52c9e86b6486
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
140
a33ad7189d21 1) news:// -> news:
thomask
parents: 70
diff changeset
1 // $HeadURL$
a33ad7189d21 1) news:// -> news:
thomask
parents: 70
diff changeset
2 // $Date$
a33ad7189d21 1) news:// -> news:
thomask
parents: 70
diff changeset
3 // $Author$
a33ad7189d21 1) news:// -> news:
thomask
parents: 70
diff changeset
4
0
3269e4627918 init dstress
svnowner
parents:
diff changeset
5 // @author@ Sean Kelly <sean@f4.ca>
3269e4627918 init dstress
svnowner
parents:
diff changeset
6 // @date@ 2004-09-11
140
a33ad7189d21 1) news:// -> news:
thomask
parents: 70
diff changeset
7 // @uri@ news:chtj6t$24bm$1@digitaldaemon.com
a33ad7189d21 1) news:// -> news:
thomask
parents: 70
diff changeset
8 // @url@ nntp://digitalmars.com/digitalmars.D.bugs/1821
70
5f98d4a33d49 1) review of all test cases with unexpected results (except encoding and html/xml)
thomask
parents: 1
diff changeset
9
5f98d4a33d49 1) review of all test cases with unexpected results (except encoding and html/xml)
thomask
parents: 1
diff changeset
10 module dstress.run.auto_04;
0
3269e4627918 init dstress
svnowner
parents:
diff changeset
11
3269e4627918 init dstress
svnowner
parents:
diff changeset
12 int status;
3269e4627918 init dstress
svnowner
parents:
diff changeset
13
3269e4627918 init dstress
svnowner
parents:
diff changeset
14 auto class AutoClass{
3269e4627918 init dstress
svnowner
parents:
diff changeset
15 this(){
3269e4627918 init dstress
svnowner
parents:
diff changeset
16 assert(status==0);
3269e4627918 init dstress
svnowner
parents:
diff changeset
17 status+=2;
3269e4627918 init dstress
svnowner
parents:
diff changeset
18 }
3269e4627918 init dstress
svnowner
parents:
diff changeset
19 ~this(){
3269e4627918 init dstress
svnowner
parents:
diff changeset
20 assert(status==2);
3269e4627918 init dstress
svnowner
parents:
diff changeset
21 status--;
3269e4627918 init dstress
svnowner
parents:
diff changeset
22 throw new Exception("error msg");
3269e4627918 init dstress
svnowner
parents:
diff changeset
23 }
3269e4627918 init dstress
svnowner
parents:
diff changeset
24 }
3269e4627918 init dstress
svnowner
parents:
diff changeset
25
3269e4627918 init dstress
svnowner
parents:
diff changeset
26 void check(){
3269e4627918 init dstress
svnowner
parents:
diff changeset
27 auto AutoClass ac = new AutoClass();
3269e4627918 init dstress
svnowner
parents:
diff changeset
28 throw new Exception("check error");
3269e4627918 init dstress
svnowner
parents:
diff changeset
29 }
3269e4627918 init dstress
svnowner
parents:
diff changeset
30
3269e4627918 init dstress
svnowner
parents:
diff changeset
31 int main(){
3269e4627918 init dstress
svnowner
parents:
diff changeset
32 assert(status==0);
3269e4627918 init dstress
svnowner
parents:
diff changeset
33 try{
3269e4627918 init dstress
svnowner
parents:
diff changeset
34 check();
3269e4627918 init dstress
svnowner
parents:
diff changeset
35 }catch{
3269e4627918 init dstress
svnowner
parents:
diff changeset
36 assert(status==1);
3269e4627918 init dstress
svnowner
parents:
diff changeset
37 status-=5;
3269e4627918 init dstress
svnowner
parents:
diff changeset
38 }
799
c67acdbaf88e Sean Kelly <sean@f4.ca>
thomask
parents: 140
diff changeset
39
c67acdbaf88e Sean Kelly <sean@f4.ca>
thomask
parents: 140
diff changeset
40 if(status==-4){
c67acdbaf88e Sean Kelly <sean@f4.ca>
thomask
parents: 140
diff changeset
41 return 0;
c67acdbaf88e Sean Kelly <sean@f4.ca>
thomask
parents: 140
diff changeset
42 }
c67acdbaf88e Sean Kelly <sean@f4.ca>
thomask
parents: 140
diff changeset
43 assert(0);
0
3269e4627918 init dstress
svnowner
parents:
diff changeset
44 }