frankpfenning / C0

C0 Language
4 stars 0 forks source link

Coin needs to check that all values passed to functions are initialized. #62

Open robsimmons opened 9 years ago

robsimmons commented 9 years ago
[rjsimmon@unix1 ~]$ cat foo.c0 
int do(int x) { return x + 1; }
[rjsimmon@unix1 ~]$ coin foo.c0 
C0 interpreter (coin) 0.3.2 'Nickel' (r364, Tue Nov 19 22:45:16 EST 2013)
Type `#help' for help or `#quit' to exit.
--> int i;
--> do(i);
Error (DYNAMIC SEMANTICS, PLEASE REPORT): assigning uninitialized value where a value of type int is expected
Last position: <stdio>:1.1-1.6
               do from <stdio>:1.1-1.6
--> i + 1;
Error: uninitialized value used
Last position: <stdio>:1.1-1.6

Both of these should give the "uninitialized value used" error.