summaryrefslogtreecommitdiff
path: root/src/spec_analysis.ml
diff options
context:
space:
mode:
authorAlasdair Armstrong2018-12-07 21:53:29 +0000
committerAlasdair Armstrong2018-12-07 21:53:29 +0000
commit2c25110ad2f5e636239ba65a2154aae79ffa253c (patch)
tree51cdd81ea260dacd0faa1aed476ae95a2f3cc322 /src/spec_analysis.ml
parent25ab845211e3df24386a0573b517a01dab879b03 (diff)
Working on better flow typing for ASL
On a new branch because it's completely broken everything for now
Diffstat (limited to 'src/spec_analysis.ml')
-rw-r--r--src/spec_analysis.ml4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/spec_analysis.ml b/src/spec_analysis.ml
index 9453e999..84fa8235 100644
--- a/src/spec_analysis.ml
+++ b/src/spec_analysis.ml
@@ -309,7 +309,9 @@ let fv_of_kind_def consider_var (KD_aux(k,_)) = match k with
| KD_nabbrev(_,id,_,nexp) -> init_env (string_of_id id), fv_of_nexp consider_var mt mt nexp
let fv_of_type_def consider_var (TD_aux(t,_)) = match t with
- | TD_abbrev(id,_,typschm) -> init_env (string_of_id id), snd (fv_of_typschm consider_var mt mt typschm)
+ | TD_abbrev(id,typq,Typ_arg_aux(Typ_arg_typ typ, l)) ->
+ let typschm = TypSchm_aux (TypSchm_ts (typq,typ), l) in
+ init_env (string_of_id id), snd (fv_of_typschm consider_var mt mt typschm)
| TD_record(id,_,typq,tids,_) ->
let binds = init_env (string_of_id id) in
let bounds = if consider_var then typq_bindings typq else mt in