summaryrefslogtreecommitdiff
path: root/src/initial_check.ml
diff options
context:
space:
mode:
authorAlasdair Armstrong2018-01-03 15:46:23 +0000
committerAlasdair Armstrong2018-01-03 15:46:23 +0000
commit90ca4e03c240675b1830a5e48cea5f6c9e412b2a (patch)
tree55dd4be9239dd78ace165483336c5eee0200a05e /src/initial_check.ml
parent4bb1e41bc2a1ae93e26094d827f43d2d21ec8223 (diff)
Updates to interpreter
Experimenting with porting riscv model to new typechecker
Diffstat (limited to 'src/initial_check.ml')
-rw-r--r--src/initial_check.ml2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/initial_check.ml b/src/initial_check.ml
index 4fde87cd..0915bc38 100644
--- a/src/initial_check.ml
+++ b/src/initial_check.ml
@@ -472,6 +472,7 @@ and to_ast_exp (k_env : kind Envmap.t) (def_ord : order) (Parse_ast.E_aux(exp,l)
| None -> E_block(List.map (to_ast_exp k_env def_ord) exps))
| Parse_ast.E_nondet(exps) -> E_nondet(List.map (to_ast_exp k_env def_ord) exps)
| Parse_ast.E_id(id) -> E_id(to_ast_id id)
+ | Parse_ast.E_ref(id) -> E_ref(to_ast_id id)
| Parse_ast.E_lit(lit) -> E_lit(to_ast_lit lit)
| Parse_ast.E_cast(typ,exp) -> E_cast(to_ast_typ k_env def_ord typ, to_ast_exp k_env def_ord exp)
| Parse_ast.E_app(f,args) ->
@@ -945,6 +946,7 @@ let initial_kind_env =
("list", {k = K_Lam( [{k = K_Typ}], {k = K_Typ})});
("reg", {k = K_Lam( [{k = K_Typ}], {k= K_Typ})});
("register", {k = K_Lam( [{k = K_Typ}], {k= K_Typ})});
+ ("ref", {k = K_Lam( [{k = K_Typ}], {k= K_Typ})});
("range", {k = K_Lam( [ {k = K_Nat}; {k= K_Nat}], {k = K_Typ}) });
("vector", {k = K_Lam( [{k = K_Nat}; {k= K_Ord} ; {k=K_Typ}], {k=K_Typ}) } );
("atom", {k = K_Lam( [ {k=K_Nat} ], {k=K_Typ})});