From f1c54f39609fd2e13fb339a6a94f9f500f7af3a5 Mon Sep 17 00:00:00 2001 From: ppedrot Date: Mon, 30 Jan 2012 18:17:13 +0000 Subject: Added an pattern / occurence syntax for vm_compute. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@14950 85f007b7-540e-0410-9357-904b9bb8a0f7 --- proofs/redexpr.ml | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'proofs') diff --git a/proofs/redexpr.ml b/proofs/redexpr.ml index 0430a239e2..10e1e66cb2 100644 --- a/proofs/redexpr.ml +++ b/proofs/redexpr.ml @@ -191,7 +191,16 @@ let rec reduction_of_red_expr = function (try reduction_of_red_expr (Stringmap.find s !red_expr_tab) with Not_found -> error("unknown user-defined reduction \""^s^"\""))) - | CbvVm -> (cbv_vm ,VMcast) + | CbvVm (Some lp) -> + let b = is_reference (snd lp) in + let lp = out_with_occurrences lp in + let vmfun _ env map c = + let tpe = Retyping.get_type_of env map c in + Vnorm.cbv_vm env c tpe + in + let redfun = contextually b lp vmfun in + (redfun, VMcast) + | CbvVm None -> (cbv_vm, VMcast) let subst_flags subs flags = -- cgit v1.2.3