diff options
| author | herbelin | 2006-06-27 11:59:50 +0000 |
|---|---|---|
| committer | herbelin | 2006-06-27 11:59:50 +0000 |
| commit | c7f1f4689b718cc9fc0017e21f667d29d792433b (patch) | |
| tree | 9303d2bc69d0eb0a84d4d278e82376e857303825 | |
| parent | 2d6eb6f004cb6a424234ef8ace8f19341eb3e5f8 (diff) | |
Backtrack sur l'introduction de contraintes sur l'absence des 'ident' dans l'environnement de preuve au moment de l'interprétation des arguments de tactiques (version 8971)
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@8991 85f007b7-540e-0410-9357-904b9bb8a0f7
| -rw-r--r-- | tactics/tacinterp.ml | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/tactics/tacinterp.ml b/tactics/tacinterp.ml index e34a165d8d..b83e590f9a 100644 --- a/tactics/tacinterp.ml +++ b/tactics/tacinterp.ml @@ -999,7 +999,7 @@ let interp_ltac_var coerce ist env locid = let coerce_to_ident env = function | VIntroPattern (IntroIdentifier id) -> id | VConstr c when isVar c & not (is_variable env (destVar c)) -> - (* This happens e.g. in definitions like "Tac H = Clear H; Intro H" *) + (* This happens e.g. in definitions like "Tac H = clear H; intro H" *) destVar c | v -> raise (CannotCoerceTo "a fresh identifier") @@ -1015,8 +1015,9 @@ let interp_name ist gl = function let coerce_to_intro_pattern env = function | VIntroPattern ipat -> ipat - | VConstr c when isVar c & not (is_variable env (destVar c)) -> - (* This happens e.g. in definitions like "Tac H = Clear H; Intro H" *) + | VConstr c when isVar c -> + (* This happens e.g. in definitions like "Tac H = clear H; intro H" *) + (* but also in "destruct H as (H,H')" *) IntroIdentifier (destVar c) | v -> raise (CannotCoerceTo "an introduction pattern") |
