Files
compiler-the-translators/tests/sprint4/test/sp4_cg_fib.alpha
2025-05-05 17:16:03 -04:00

35 lines
625 B
Plaintext

(* TEST: [-asc -tc -cg -ir] *)
#include "std.alpha"
type M : string -> integer
function entry : M
type fib: integer -> integer
function Fib : fib
Fib(i) := {
[ Boolean: a ; Boolean: b ; Boolean: c]
if( i = 0 ) then {
return 7;
} else {
i := i;
}
b := b | (a & c);
b := 2 < 3;
if(i = 1) then {
return 1;
} else {
return i + Fib(i - 1);
}
}
entry (arg) := {
[ integer: x; integer: y ]
x := 2;
x := Fib(2);
y := printInteger(Fib(2));
return 1;
}