From c65aecd008d34102f4c95649113ed7f9afcc903b Mon Sep 17 00:00:00 2001 From: Alasdair Date: Wed, 12 Dec 2018 00:49:32 +0000 Subject: Fix various boolean type-variable related issues Remove some dead code in Pretty_print_common Start thinking a bit about Minisail-esque syntactic sugar in initial_check --- src/initial_check.ml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'src/initial_check.ml') diff --git a/src/initial_check.ml b/src/initial_check.ml index 44f36892..da6c7b84 100644 --- a/src/initial_check.ml +++ b/src/initial_check.ml @@ -96,7 +96,7 @@ let to_ast_id (P.Id_aux(id, l)) = | P.DeIid x -> DeIid x), l) -let to_ast_var (P.Kid_aux(P.Var v,l)) = Kid_aux(Var v,l) +let to_ast_var (P.Kid_aux (P.Var v, l)) = Kid_aux (Var v, l) let to_ast_effects = function | P.ATyp_aux (P.ATyp_set effects, l) -> @@ -161,6 +161,8 @@ let rec to_ast_typ ctx (P.ATyp_aux (aux, l)) = let kids = List.map to_ast_var kids in let ctx = { ctx with kinds = List.fold_left (fun kinds kid -> KBindings.add kid K_int kinds) ctx.kinds kids } in Typ_exist (kids, to_ast_constraint ctx nc, to_ast_typ ctx atyp) + | P.ATyp_base (id, kind, nc) -> + raise (Reporting.err_unreachable l __POS__ "TODO") | _ -> raise (Reporting.err_typ l "Invalid type") in Typ_aux (aux, l) @@ -763,6 +765,7 @@ let initial_ctx = { ("atom", [K_int]); ("implicit", [K_int]); ("itself", [K_int]); + ("not", [K_bool]); ]; kinds = KBindings.empty; scattereds = Bindings.empty; -- cgit v1.2.3