summaryrefslogtreecommitdiff
path: root/tiger-compiler/tests/good/mutually-recursive-functions.tig
diff options
context:
space:
mode:
Diffstat (limited to 'tiger-compiler/tests/good/mutually-recursive-functions.tig')
-rw-r--r--tiger-compiler/tests/good/mutually-recursive-functions.tig12
1 files changed, 12 insertions, 0 deletions
diff --git a/tiger-compiler/tests/good/mutually-recursive-functions.tig b/tiger-compiler/tests/good/mutually-recursive-functions.tig
new file mode 100644
index 0000000..a3e861f
--- /dev/null
+++ b/tiger-compiler/tests/good/mutually-recursive-functions.tig
@@ -0,0 +1,12 @@
+/* define valid mutually recursive functions */
+let
+
+function do_nothing1(a : int, b : string) : int=
+ (do_nothing2(a+1);0)
+
+function do_nothing2(d : int) : string =
+ (if d < 10 then do_nothing1(d, "str") else 0;" ")
+
+in
+ do_nothing1(0, "str2")
+end