From b9f47391f7f259c24119d1de0a87839e2cc5e80c Mon Sep 17 00:00:00 2001 From: Stephane Glondu Date: Sat, 24 Jul 2010 20:01:08 +0200 Subject: Imported Upstream snapshot 8.3~beta0+13323 --- tactics/auto.ml | 2 +- tactics/auto.mli | 2 +- tactics/autorewrite.ml | 2 +- tactics/autorewrite.mli | 2 +- tactics/btermdn.ml | 2 +- tactics/btermdn.mli | 2 +- tactics/class_tactics.ml4 | 3 +-- tactics/contradiction.ml | 2 +- tactics/contradiction.mli | 2 +- tactics/decl_interp.ml | 2 +- tactics/decl_interp.mli | 2 +- tactics/decl_proof_instr.ml | 2 +- tactics/decl_proof_instr.mli | 2 +- tactics/dhyp.ml | 2 +- tactics/dhyp.mli | 2 +- tactics/eauto.ml4 | 2 +- tactics/eauto.mli | 2 +- tactics/elim.ml | 2 +- tactics/elim.mli | 2 +- tactics/elimschemes.ml | 2 +- tactics/elimschemes.mli | 2 +- tactics/eqdecide.ml4 | 2 +- tactics/eqschemes.ml | 2 +- tactics/eqschemes.mli | 2 +- tactics/equality.ml | 2 +- tactics/equality.mli | 2 +- tactics/evar_tactics.ml | 2 +- tactics/evar_tactics.mli | 2 +- tactics/extraargs.ml4 | 2 +- tactics/extraargs.mli | 2 +- tactics/extratactics.ml4 | 2 +- tactics/extratactics.mli | 2 +- tactics/hiddentac.ml | 2 +- tactics/hiddentac.mli | 3 +-- tactics/hipattern.ml4 | 2 +- tactics/hipattern.mli | 2 +- tactics/inv.ml | 2 +- tactics/inv.mli | 2 +- tactics/leminv.ml | 2 +- tactics/nbtermdn.ml | 2 +- tactics/nbtermdn.mli | 2 +- tactics/refine.ml | 19 +++++++++++++++++-- tactics/refine.mli | 2 +- tactics/rewrite.ml4 | 3 +-- tactics/tacinterp.ml | 2 +- tactics/tacinterp.mli | 2 +- tactics/tacticals.ml | 2 +- tactics/tacticals.mli | 2 +- tactics/tactics.ml | 2 +- tactics/tactics.mli | 2 +- tactics/tauto.ml4 | 2 +- tactics/termdn.ml | 2 +- tactics/termdn.mli | 2 +- 53 files changed, 69 insertions(+), 57 deletions(-) (limited to 'tactics') diff --git a/tactics/auto.ml b/tactics/auto.ml index 99630417..e53e05d0 100644 --- a/tactics/auto.ml +++ b/tactics/auto.ml @@ -1,6 +1,6 @@ (************************************************************************) (* v * The Coq Proof Assistant / The Coq Development Team *) -(* incr p; introf gl)) + (aux (n-1)) gl in + tclORELSE + (aux n) + (* Now we know how many red are needed *) + (fun gl -> tclDO !p red_in_concl gl) + let rec tcc_aux subst (TH (c,mm,sgp) as _th) gl = let c = substl subst c in match (kind_of_term c,sgp) with @@ -345,7 +358,9 @@ let rec tcc_aux subst (TH (c,mm,sgp) as _th) gl = let fixes = array_map3 (fun f n c -> (out_name f,succ n,c)) fi ni ai in let firsts,lasts = list_chop j (Array.to_list fixes) in tclTHENS - (mutual_fix (out_name fi.(j)) (succ ni.(j)) (firsts@List.tl lasts) j) + (tclTHEN + (ensure_products (succ ni.(j))) + (mutual_fix (out_name fi.(j)) (succ ni.(j)) (firsts@List.tl lasts) j)) (List.map (function | None -> tclIDTAC | Some th -> tcc_aux subst th) sgp) diff --git a/tactics/refine.mli b/tactics/refine.mli index 89e53167..e847a749 100644 --- a/tactics/refine.mli +++ b/tactics/refine.mli @@ -1,6 +1,6 @@ (************************************************************************) (* v * The Coq Proof Assistant / The Coq Development Team *) -(*