rust/tests/ui/fact.rs

27 lines
411 B
Rust

//@ run-pass
fn f(x: isize) -> isize {
// println!("in f:");
println!("{}", x);
if x == 1 {
// println!("bottoming out");
return 1;
} else {
// println!("recurring");
let y: isize = x * f(x - 1);
// println!("returned");
println!("{}", y);
return y;
}
}
pub fn main() {
assert_eq!(f(5), 120);
// println!("all done");
}