aboutsummaryrefslogtreecommitdiff
path: root/src/test/run-pass/tail-direct.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/run-pass/tail-direct.rs')
-rw-r--r--src/test/run-pass/tail-direct.rs24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/test/run-pass/tail-direct.rs b/src/test/run-pass/tail-direct.rs
new file mode 100644
index 00000000..345a322e
--- /dev/null
+++ b/src/test/run-pass/tail-direct.rs
@@ -0,0 +1,24 @@
+// -*- rust -*-
+
+fn main() {
+ check(even(42));
+ check(odd(45));
+}
+
+fn even(int n) -> bool {
+ if (n == 0) {
+ ret true;
+ }
+ else {
+ be odd(n - 1);
+ }
+}
+
+fn odd(int n) -> bool {
+ if (n == 0) {
+ ret false;
+ }
+ else {
+ be even(n - 1);
+ }
+}