aboutsummaryrefslogtreecommitdiff
path: root/tests/generic_defer
diff options
context:
space:
mode:
Diffstat (limited to 'tests/generic_defer')
-rw-r--r--tests/generic_defer/generic_defer.ek20
-rw-r--r--tests/generic_defer/source.mk1
2 files changed, 21 insertions, 0 deletions
diff --git a/tests/generic_defer/generic_defer.ek b/tests/generic_defer/generic_defer.ek
new file mode 100644
index 0000000..cb11154
--- /dev/null
+++ b/tests/generic_defer/generic_defer.ek
@@ -0,0 +1,20 @@
+define any[] {}
+
+typedef i27 {}
+typedef i9 {}
+
+typedef a[any T] {
+ T b;
+ do_stuff() {
+ defer do_stuff();
+ }
+}
+
+main()
+{
+ a![i27] a = a![i27]{.b = 10};
+ a.do_stuff();
+
+ a![i9] b = a![i9]{.b = 20 as i9};
+ b.do_stuff();
+}
diff --git a/tests/generic_defer/source.mk b/tests/generic_defer/source.mk
new file mode 100644
index 0000000..b0a041d
--- /dev/null
+++ b/tests/generic_defer/source.mk
@@ -0,0 +1 @@
+SIMPLE += generic_defer