X-Git-Url: https://git.xandkar.net/?a=blobdiff_plain;f=compiler%2Fsrc%2Flib%2Ftiger%2Ftiger_test_cases.ml;h=082e02f56393b6c0ee131af90a20979b37307df5;hb=e6e82c0866db4eb08f956b2582e5c2ed5399e986;hp=81690838a73a4cf472b5bb2a3fbf9860db2f2fd8;hpb=d5517328dcf93c5bd74f1895262e47b70d2e4313;p=tiger.ml.git diff --git a/compiler/src/lib/tiger/tiger_test_cases.ml b/compiler/src/lib/tiger/tiger_test_cases.ml index 8169083..082e02f 100644 --- a/compiler/src/lib/tiger/tiger_test_cases.ml +++ b/compiler/src/lib/tiger/tiger_test_cases.ml @@ -55,21 +55,19 @@ let micro = (Some [ID "f"; LPAREN; STRING "a"; COMMA; INT 3; COMMA; ID "foo"; RPAREN]) ~is_error_expected_semant:(Some Error.is_unknown_id) ) - ; ( let code = - "let \ - type a = int \ - type b = a \ - type c = b \ - var i : a := 2 \ - var j : c := 3 \ - in \ - i := j \ - end \ - " - in - Test.case + ; ( Test.case "Type aliases" - ~code + ~code: + "let \ + type a = int \ + type b = a \ + type c = b \ + var i : a := 2 \ + var j : c := 3 \ + in \ + i := j \ + end \ + " ) ; ( let code = "let \ @@ -98,6 +96,30 @@ let micro = lst \n\ end" ) + ; ( Test.case + "Cycle in type dec" + ~code:"\ + let \n\ + type a = b \n\ + type b = a \n\ + in \n\ + end \ + " + ~is_error_expected_semant:(Some Error.is_cycle_in_type_dec) + ) + ; ( Test.case + "Cycle in type dec" + ~code:"\ + let \n\ + type a = b \n\ + type b = c \n\ + type c = a \n\ + var x : a := 1 \n\ + in \n\ + end \ + " + ~is_error_expected_semant:(Some Error.is_cycle_in_type_dec) + ) ] let book ~dir =