aboutsummaryrefslogtreecommitdiffhomepage
path: root/kernel/cooking.ml
diff options
context:
space:
mode:
authorGravatar coq <coq@85f007b7-540e-0410-9357-904b9bb8a0f7>2002-10-07 16:56:17 +0000
committerGravatar coq <coq@85f007b7-540e-0410-9357-904b9bb8a0f7>2002-10-07 16:56:17 +0000
commit02ae9a0b28366372c9eaad1c25428c65314e6fcb (patch)
tree3526dd0b974d94975edab48075eb6b8117ff2ecb /kernel/cooking.ml
parentfb8c46171399af936caa3fbab8eff0cfc06ec94d (diff)
Lazy manuelles dans le code
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@3100 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'kernel/cooking.ml')
-rw-r--r--kernel/cooking.ml17
1 files changed, 10 insertions, 7 deletions
diff --git a/kernel/cooking.ml b/kernel/cooking.ml
index eb37adbd3..7c3b8e60f 100644
--- a/kernel/cooking.ml
+++ b/kernel/cooking.ml
@@ -107,7 +107,7 @@ let expmod_constr modlist c =
str"and then require that theorems which use them" ++ spc () ++
str"be transparent");
match cb.const_body with
- | Some body -> Lazy.force_val body
+ | Some body -> Declarations.force body
| None -> assert false
in
let c' = modify_opers expfun modlist c in
@@ -141,11 +141,12 @@ let abstract_constant ids_to_abs hyps (body,typ) =
let body' = match body with
None -> None
| Some l_body ->
- Some (lazy (let body = Lazy.force_val l_body in
- let (_,body') =
- List.fold_left abstract_once_body (hyps,body) ids_to_abs
- in
- body'))
+ Some (Declarations.from_val
+ (let body = Declarations.force l_body in
+ let (_,body') =
+ List.fold_left abstract_once_body (hyps,body) ids_to_abs
+ in
+ body'))
in
(body',typ')
@@ -154,7 +155,9 @@ let cook_constant env r =
let typ = expmod_type r.d_modlist cb.const_type in
let body =
option_app
- (fun lconstr -> lazy (expmod_constr r.d_modlist (Lazy.force_val lconstr)))
+ (fun lconstr ->
+ Declarations.from_val
+ (expmod_constr r.d_modlist (Declarations.force lconstr)))
cb.const_body
in
let hyps =