aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPhilip Herron <philip.herron@embecosm.com>2021-01-27 11:04:19 +0000
committerPhilip Herron <philip.herron@embecosm.com>2021-01-27 11:04:19 +0000
commite0e49f434423def63312084b04ea0e60e7787e27 (patch)
tree927ab948abc80e3a3ef08af35ad1c80beed0b5e5
parent244c2d2ea1a5a69ab6f7f50902512c1a7daa29c9 (diff)
downloadgcc-e0e49f434423def63312084b04ea0e60e7787e27.zip
gcc-e0e49f434423def63312084b04ea0e60e7787e27.tar.gz
gcc-e0e49f434423def63312084b04ea0e60e7787e27.tar.bz2
Add a recursive function test case
This greatest common divisor function demonstrates that recursion is working.
-rw-r--r--gcc/testsuite/rust.test/compilable/recursive_fn1.rs11
1 files changed, 11 insertions, 0 deletions
diff --git a/gcc/testsuite/rust.test/compilable/recursive_fn1.rs b/gcc/testsuite/rust.test/compilable/recursive_fn1.rs
new file mode 100644
index 0000000..89c21d0
--- /dev/null
+++ b/gcc/testsuite/rust.test/compilable/recursive_fn1.rs
@@ -0,0 +1,11 @@
+fn gcd(x: i32, y: i32) -> i32 {
+ if y == 0 {
+ x
+ } else {
+ gcd(y, x % y)
+ }
+}
+
+fn main() {
+ let a = gcd(100, 5);
+}