summaryrefslogtreecommitdiff
path: root/tactics/tactics.ml
diff options
context:
space:
mode:
authorGravatar Stephane Glondu <steph@glondu.net>2010-12-24 11:53:29 +0100
committerGravatar Stephane Glondu <steph@glondu.net>2010-12-24 11:53:29 +0100
commit6b691bbd2101fd39395c0d2135fd7c06a8915e14 (patch)
treeb04b45d1a6f42d19b1428c522d647afbad2f9b83 /tactics/tactics.ml
parent3e96002677226c0cdaa8f355938a76cfb37a722a (diff)
Imported Upstream version 8.3pl1upstream/8.3pl1
Diffstat (limited to 'tactics/tactics.ml')
-rw-r--r--tactics/tactics.ml8
1 files changed, 4 insertions, 4 deletions
diff --git a/tactics/tactics.ml b/tactics/tactics.ml
index 4ecc4739..569cf356 100644
--- a/tactics/tactics.ml
+++ b/tactics/tactics.ml
@@ -6,7 +6,7 @@
(* * GNU Lesser General Public License Version 2.1 *)
(************************************************************************)
-(* $Id: tactics.ml 13464 2010-09-24 22:23:02Z herbelin $ *)
+(* $Id: tactics.ml 13693 2010-12-08 15:32:25Z msozeau $ *)
open Pp
open Util
@@ -2365,8 +2365,8 @@ let abstract_args gl generalize_vars dep id defined f args =
in
let f', args' = decompose_indapp f args in
let parvars = ids_of_constr ~all:true Idset.empty f' in
+ let seen = ref parvars in
let dogen, f', args' =
- let seen = ref parvars in
let find i x = not (isVar x) ||
let v = destVar x in
if is_defined_variable env v || Idset.mem v !seen then true
@@ -2379,8 +2379,8 @@ let abstract_args gl generalize_vars dep id defined f args =
true, mkApp (f', before), after
in
if dogen then
- let arity, ctx, ctxenv, c', args, eqs, refls, nogen, vars, env =
- Array.fold_left aux (pf_type_of gl f',[],env,f',[],[],[],parvars,Idset.empty,env) args'
+ let arity, ctx, ctxenv, c', args, eqs, refls, nogen, vars, env =
+ Array.fold_left aux (pf_type_of gl f',[],env,f',[],[],[],!seen,Idset.empty,env) args'
in
let args, refls = List.rev args, List.rev refls in
let vars =