Global variables (#378)

* global variables

* implemented type checking of global variable, added test case

* added a comment

* improvements based on Dave's suggestions

* improvements based on Jon's suggestions

* added test cases about global variable ordering
This commit is contained in:
Jeremy G. Siek
2021-03-15 16:06:27 -04:00
committed by GitHub
parent 41786eae25
commit ced98ef021
22 changed files with 822 additions and 3 deletions
+22
View File
@@ -0,0 +1,22 @@
********** source program **********
var Int : x = 1
fn identity (0 = Int: x) -> () {
return x;
}
fn main () -> Int {
return identity(0 = 0);
}
********** type checking **********
--- step exp Int --->
--- step exp Int --->
--- step exp () --->
--- step exp Int --->
--- step exp Int --->
--- step exp Int --->
--- step exp () --->
10: type error in return
expected: Tuple()
actual: Int
EXIT CODE: 255