diff options
-rw-r--r-- | kernel/cooking.ml | 2 | ||||
-rw-r--r-- | kernel/cooking.mli | 3 | ||||
-rw-r--r-- | kernel/safe_typing.ml | 4 |
3 files changed, 5 insertions, 4 deletions
diff --git a/kernel/cooking.ml b/kernel/cooking.ml index e8ed6ca32..1bccf60f6 100644 --- a/kernel/cooking.ml +++ b/kernel/cooking.ml @@ -162,4 +162,4 @@ let cook_constant env r = let hyps = List.map (fun (sp,c,t) -> (basename sp,c,t)) cb.const_hyps in let hyps = map_named_context (expmod_constr env r.d_modlist) hyps in let body,typ = abstract_constant r.d_abstract hyps (body,typ) in - (body, typ, cb.const_constraints) + (body, typ, cb.const_constraints, cb.const_opaque) diff --git a/kernel/cooking.mli b/kernel/cooking.mli index db2ba1551..48f4dfc83 100644 --- a/kernel/cooking.mli +++ b/kernel/cooking.mli @@ -33,7 +33,8 @@ type recipe = { d_abstract : identifier list; d_modlist : work_list } -val cook_constant : env -> recipe -> constr option * constr * constraints +val cook_constant : + env -> recipe -> constr option * constr * constraints * bool (*s Utility functions used in module [Discharge]. *) diff --git a/kernel/safe_typing.ml b/kernel/safe_typing.ml index d7a57e2d9..1c7d5e17f 100644 --- a/kernel/safe_typing.ml +++ b/kernel/safe_typing.ml @@ -305,7 +305,7 @@ let add_constant sp ce locals env = sp env locals (safe_infer_declaration env (Def body')) op let add_discharged_constant sp r locals env = - let (body,typ,cst) = Cooking.cook_constant env r in + let (body,typ,cst,op) = Cooking.cook_constant env r in let env' = add_constraints cst env in match body with | None -> @@ -322,7 +322,7 @@ let add_discharged_constant sp r locals env = const_type = typ; const_hyps = sp_hyps; const_constraints = cst; - const_opaque = false } + const_opaque = op } in Environ.add_constant sp cb env' |