Check scope of break statements
[tiger.ml.git] / compiler / src / lib / tiger / tiger_error.mli
index d7c2e79..0344269 100644 (file)
@@ -4,6 +4,13 @@ module Sym = Tiger_symbol
 module Typ = Tiger_env_type
 
 type t =
+  | Cycle_in_type_decs of
+      { from_id  : Sym.t
+      ; from_pos : Pos.t
+      ;   to_id  : Sym.t
+      ;   to_pos : Pos.t
+      }
+  | Break_outside_loop of Pos.t
   | Invalid_syntax    of Pos.t
   | Unknown_id        of {id    : Sym.t; pos : Pos.t}
   | Unknown_type      of {ty_id : Sym.t; pos : Pos.t}
@@ -73,7 +80,10 @@ val to_string : t -> string
 val is_unknown_id   : t -> bool
 val is_unknown_type : t -> bool
 val is_wrong_type   : t -> bool
+val is_wrong_number_of_args : t -> bool
 val is_invalid_syntax : t -> bool
 val is_not_a_record : t -> bool
 val is_not_an_array : t -> bool
 val is_no_such_field_in_record : t -> bool
+val is_cycle_in_type_dec : t -> bool
+val is_break_outside_loop : t -> bool
This page took 0.026076 seconds and 4 git commands to generate.