summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/c/exception.expect2
-rw-r--r--test/c/exception.sail15
2 files changed, 16 insertions, 1 deletions
diff --git a/test/c/exception.expect b/test/c/exception.expect
index 79d97c6a..faab808f 100644
--- a/test/c/exception.expect
+++ b/test/c/exception.expect
@@ -4,3 +4,5 @@ Caught Estring
test
2nd try Caught Epair
x = 33
+in g()
+Fall through OK
diff --git a/test/c/exception.sail b/test/c/exception.sail
index 4e74fcae..251852c9 100644
--- a/test/c/exception.sail
+++ b/test/c/exception.sail
@@ -47,6 +47,19 @@ function main () = {
},
_ => ()
};
+ try throw(Eunknown()) catch {
+ _ => try let _ = g() in () catch {
+ _ => print("caught old exception")
+ }
+ };
+ try
+ try throw Eunknown() catch {
+ Estring(_) => ()
+ }
+ catch {
+ Eunknown() => print("Fall through OK"),
+ _ => ()
+ };
f();
()
-} \ No newline at end of file
+}