diff run/mini/bug308_double_finally.d @ 1628:c6ef09dfba4d

add mini test set from ldc project
author Moritz Warning <moritzwarning@web.de>
date Mon, 10 Jan 2011 19:47:18 +0100
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/run/mini/bug308_double_finally.d	Mon Jan 10 19:47:18 2011 +0100
@@ -0,0 +1,20 @@
+extern(C) int printf(char*, ...);
+
+long foo(ref int p) {
+    try { return 0; }
+    finally {
+        p++;
+        throw new Object;
+    }
+}
+
+void main() {
+    int p = 0;
+    try {
+        foo(p);
+        assert(0);
+    } catch {
+    }
+    printf("Number of types scope(exit) was executed : %d\n", p);
+    assert(p == 1);
+}
\ No newline at end of file