diff options
| author | Alasdair | 2018-12-12 00:49:32 +0000 |
|---|---|---|
| committer | Alasdair | 2018-12-12 00:49:32 +0000 |
| commit | c65aecd008d34102f4c95649113ed7f9afcc903b (patch) | |
| tree | 71386fec2d39ffc7f73b219b70c2fc49d5adbb10 /src/initial_check.ml | |
| parent | ab4b9ca4f7cab45b6a2a13d0ef125dcf9c276a06 (diff) | |
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
Diffstat (limited to 'src/initial_check.ml')
| -rw-r--r-- | src/initial_check.ml | 5 |
1 files changed, 4 insertions, 1 deletions
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; |
