aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbarras2009-05-09 17:53:06 +0000
committerbarras2009-05-09 17:53:06 +0000
commiteceac2ae83fe49e235be8fd930030e80f484f66f (patch)
tree92af2e09e5ec43a5635104c08b0a6940e695c3a3
parent2e56d0c901ebaa034f9974a50b892378b755de24 (diff)
fix a bug in canonical structures (bug found and fixed by Cyril)
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12120 85f007b7-540e-0410-9357-904b9bb8a0f7
-rw-r--r--pretyping/evarconv.ml6
1 files changed, 3 insertions, 3 deletions
diff --git a/pretyping/evarconv.ml b/pretyping/evarconv.ml
index bb28a09bc0..d6b10b7d0e 100644
--- a/pretyping/evarconv.ml
+++ b/pretyping/evarconv.ml
@@ -474,11 +474,11 @@ and conv_record env evd (c,bs,(params,params1),(us,us2),(ts,ts1),c1,(n,t2)) =
let (evd',ks,_) =
List.fold_left
(fun (i,ks,m) b ->
- if m=0 then (i,t2::ks, n-1) else
+ if m=n then (i,t2::ks, m-1) else
let dloc = (dummy_loc,InternalHole) in
let (i',ev) = new_evar i env ~src:dloc (substl ks b) in
- (i', ev :: ks, n - 1))
- (evd,[],n) bs
+ (i', ev :: ks, m - 1))
+ (evd,[],List.length bs - 1) bs
in
ise_and evd'
[(fun i ->