diff options
author | Enrico Tassi <Enrico.Tassi@inria.fr> | 2014-02-21 18:24:59 +0100 |
---|---|---|
committer | Enrico Tassi <Enrico.Tassi@inria.fr> | 2014-02-26 14:53:08 +0100 |
commit | 0499f51cedb38eba6b8ecd01ce94ddfb1b6ae9c8 (patch) | |
tree | eb43b12647b93e52784c9118d77c7a64199989a5 /checker/declarations.ml | |
parent | f7338257584ba69e7e815c7ef9ac0d24f0dec36c (diff) |
checker and votour ported to new vo format (after -vi2vo)
Diffstat (limited to 'checker/declarations.ml')
-rw-r--r-- | checker/declarations.ml | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/checker/declarations.ml b/checker/declarations.ml index 97958c2b7..79ba6de22 100644 --- a/checker/declarations.ml +++ b/checker/declarations.ml @@ -416,24 +416,27 @@ let subst_lazy_constr sub = function let indirect_opaque_access = ref ((fun dp i -> assert false) : DirPath.t -> int -> constr) +let indirect_opaque_univ_access = + ref ((fun dp i -> assert false) : DirPath.t -> int -> Univ.constraints) let force_lazy_constr = function | Indirect (l,dp,i) -> let c = !indirect_opaque_access dp i in force_constr (List.fold_right subst_constr_subst l (from_val c)) +let force_lazy_constr_univs = function + | OpaqueDef (Indirect (l,dp,i)) -> !indirect_opaque_univ_access dp i + | _ -> Univ.empty_constraint + let subst_constant_def sub = function | Undef inl -> Undef inl | Def c -> Def (subst_constr_subst sub c) - | OpaqueDef lc -> - OpaqueDef (Future.from_val (subst_lazy_constr sub (Future.join lc))) - -type constant_constraints = Univ.constraints Future.computation + | OpaqueDef lc -> OpaqueDef (subst_lazy_constr sub lc) let body_of_constant cb = match cb.const_body with | Undef _ -> None | Def c -> Some (force_constr c) - | OpaqueDef c -> Some (force_lazy_constr (Future.join c)) + | OpaqueDef c -> Some (force_lazy_constr c) let constant_has_body cb = match cb.const_body with | Undef _ -> false |