diff options
| author | herbelin | 2002-10-22 12:09:14 +0000 |
|---|---|---|
| committer | herbelin | 2002-10-22 12:09:14 +0000 |
| commit | 6dc2847536b74df5a4a2e28ba5a990d89b003296 (patch) | |
| tree | a626068c529a7d48fae23dd2f13799fab0d089b2 | |
| parent | f25ec92ce9acc80fea64cfbb7662b0969e518098 (diff) | |
Correction d'une incompatibilité de nommage introduite lors du commit précédent
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@3171 85f007b7-540e-0410-9357-904b9bb8a0f7
| -rw-r--r-- | tactics/tactics.ml | 18 |
1 files changed, 5 insertions, 13 deletions
diff --git a/tactics/tactics.ml b/tactics/tactics.ml index bea28226b0..bca15185cd 100644 --- a/tactics/tactics.ml +++ b/tactics/tactics.ml @@ -1063,29 +1063,21 @@ let induct_discharge old_style mind statuslists cname destopt avoid ra names gl in let rec peel_tac ra names gl = match ra with | true :: ra' -> - (* For lstatus but _buggy_: if intro_gen renames - hyprecname differently (because it already exists - in goal, then hypothesis associated to None in - lstatus will be moved at a wrong place *) let recvar,hyprec,names = match names with | [] -> - next_ident_away recvarname avoid, - next_ident_away hyprecname avoid, - [] - | [id] -> - id, next_ident_away (add_prefix "IH" id) avoid, [] + (fresh_id avoid recvarname gl, fresh_id avoid hyprecname gl, []) + | [id] -> (id, next_ident_away (add_prefix "IH" id) avoid, []) | id1::id2::names -> (id1,id2,names) in if !tophyp=None then tophyp := Some hyprec; tclTHENLIST - [ intro_gen (IntroMustBe (recvar)) destopt false; - intro_gen (IntroMustBe (hyprec)) None false; + [ intro_gen (IntroMustBe recvar) destopt false; + intro_gen (IntroMustBe hyprec) None false; peel_tac ra' names ] gl | false :: ra' -> let introstyle,names = match names with | [] -> IntroAvoid avoid, [] | id::names -> IntroMustBe id,names in - tclTHEN (intro_gen introstyle destopt false) - (peel_tac ra' names) gl + tclTHEN (intro_gen introstyle destopt false) (peel_tac ra' names) gl | [] -> check_unused_names names; tclIDTAC gl |
