From b0ae1102f6aa4cac5b4bce397ad8fa0f5885eaf1 Mon Sep 17 00:00:00 2001 From: Robbert Krebbers <mail@robbertkrebbers.nl> Date: Tue, 26 Sep 2017 22:27:01 +0200 Subject: [PATCH] Fix issue #97. --- theories/proofmode/tactics.v | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/theories/proofmode/tactics.v b/theories/proofmode/tactics.v index d25a56c5c..4c7069ccb 100644 --- a/theories/proofmode/tactics.v +++ b/theories/proofmode/tactics.v @@ -605,6 +605,7 @@ Local Tactic Notation "iForallRevert" ident(x) := lazymatch P with | context [x] => fail 2 "iRevert:" x "is used in hypothesis" H end) in + iStartProof; let A := type of x in lazymatch type of A with | Prop => revert x; first [apply tac_pure_revert|err x] @@ -623,7 +624,7 @@ Tactic Notation "iRevert" constr(Hs) := [env_reflexivity || fail "iRevert:" H "not found" |env_cbv; go Hs] end in - let Hs := iElaborateSelPat Hs in go Hs. + let Hs := iElaborateSelPat Hs in iStartProof; go Hs. Tactic Notation "iRevert" "(" ident(x1) ")" := iForallRevert x1. @@ -938,7 +939,7 @@ Tactic Notation "iIntros" constr(pat) := | ?pat :: ?pats => let H := iFresh in iIntro H; iDestructHyp H as pat; go pats end - in let pats := intro_pat.parse pat in go pats. + in let pats := intro_pat.parse pat in iStartProof; go pats. Tactic Notation "iIntros" := iIntros [IAll]. Tactic Notation "iIntros" "(" simple_intropattern(x1) ")" := -- GitLab