Mercurial > projects > ldc
annotate test/bug45.d @ 309:d59c363fccad trunk
[svn r330] Implemented synchronized statements.
Changed the tryfinally handlers to a more generalized EnclosingHandler.
Changed ClassInfoS to be mutable so they can be used as locks.
Added new BB after throw ala return/break etc.
author | lindquist |
---|---|
date | Sat, 28 Jun 2008 11:37:53 +0200 |
parents | 7299ff502248 |
children |
rev | line source |
---|---|
80
7299ff502248
[svn r84] Fixed: Returning from a void function from inside the try of a try-finally block was broken.
lindquist
parents:
diff
changeset
|
1 module bug45; |
7299ff502248
[svn r84] Fixed: Returning from a void function from inside the try of a try-finally block was broken.
lindquist
parents:
diff
changeset
|
2 |
7299ff502248
[svn r84] Fixed: Returning from a void function from inside the try of a try-finally block was broken.
lindquist
parents:
diff
changeset
|
3 void foo() { |
7299ff502248
[svn r84] Fixed: Returning from a void function from inside the try of a try-finally block was broken.
lindquist
parents:
diff
changeset
|
4 int bar; |
7299ff502248
[svn r84] Fixed: Returning from a void function from inside the try of a try-finally block was broken.
lindquist
parents:
diff
changeset
|
5 scope(exit) { bar++; } |
7299ff502248
[svn r84] Fixed: Returning from a void function from inside the try of a try-finally block was broken.
lindquist
parents:
diff
changeset
|
6 if (bar) return; |
7299ff502248
[svn r84] Fixed: Returning from a void function from inside the try of a try-finally block was broken.
lindquist
parents:
diff
changeset
|
7 } |
7299ff502248
[svn r84] Fixed: Returning from a void function from inside the try of a try-finally block was broken.
lindquist
parents:
diff
changeset
|
8 |
7299ff502248
[svn r84] Fixed: Returning from a void function from inside the try of a try-finally block was broken.
lindquist
parents:
diff
changeset
|
9 void main() { |
7299ff502248
[svn r84] Fixed: Returning from a void function from inside the try of a try-finally block was broken.
lindquist
parents:
diff
changeset
|
10 foo(); |
7299ff502248
[svn r84] Fixed: Returning from a void function from inside the try of a try-finally block was broken.
lindquist
parents:
diff
changeset
|
11 } |