aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorherbelin2008-12-30 18:31:14 +0000
committerherbelin2008-12-30 18:31:14 +0000
commitd3c49a6e536006ff121f01303ddc0a43b4c90e23 (patch)
tree1dcef9005d314d9763f9be740361d9e224b2e891 /lib
parentb18a6d179903546cbf5745e601ab221f06e30078 (diff)
- Fixed bugs and compatibilities issues in
match_conjunction/match_disjunction/array_for_all_i - Finally activate fine-tuned unfolding of iff in tauto: it breaks at only one place in the user contribs (FSetAVL_dep.v). git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11726 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'lib')
-rw-r--r--lib/util.ml7
1 files changed, 2 insertions, 5 deletions
diff --git a/lib/util.ml b/lib/util.ml
index b7aa1fc0ee..6803412fdb 100644
--- a/lib/util.ml
+++ b/lib/util.ml
@@ -947,11 +947,8 @@ let array_for_all4 f v1 v2 v3 v4 =
allrec (pred lv1)
let array_for_all_i f i v =
- let rec allrec i = function
- | -1 -> true
- | n -> (f i v.(n)) && (allrec (i-1) (n-1))
- in
- allrec i ((Array.length v)-1)
+ let rec allrec i n = n = Array.length v || f i v.(n) && allrec (i+1) (n+1) in
+ allrec i 0
let array_hd v =
match Array.length v with