+ ~is_error_expected_semant:Error.is_unknown_id (* TODO: Be more specific *)
+ )
+ ; ( let code = "abc.i" in
+ Test.case
+ code
+ ~code
+ ~out_lexing:[ID "abc"; DOT; ID "i"]
+ ~is_error_expected_semant:Error.is_unknown_id (* TODO: Be more specific *)
+ )
+ ; ( let code = "abc[0]" in
+ Test.case
+ code
+ ~code
+ ~out_lexing:[ID "abc"; LBRACK; INT 0; RBRACK]
+ ~is_error_expected_semant:Error.is_unknown_id (* TODO: Be more specific *)
+ )
+ ; ( let code = "abc[0] := foo()" in
+ Test.case
+ code
+ ~code
+ ~out_lexing:
+ [ID "abc"; LBRACK; INT 0; RBRACK; ASSIGN; ID "foo"; LPAREN; RPAREN]
+ ~is_error_expected_semant:Error.is_unknown_id (* TODO: Be more specific *)
+ )
+ ; ( let code = "abc [5] of nil" in
+ Test.case
+ code
+ ~code
+ ~out_lexing:[ID "abc"; LBRACK; INT 5; RBRACK; OF; NIL]
+ ~is_error_expected_semant:Error.is_unknown_type (* TODO: Be more specific *)