From f6ad3a33b9e4f0541bc06a6e2fefd25ad371788d Mon Sep 17 00:00:00 2001
From: Robbert Krebbers <mail@robbertkrebbers.nl>
Date: Tue, 16 Feb 2016 00:34:35 +0100
Subject: [PATCH] Use > for wp_tactics that do not strip later.

---
 heap_lang/tests.v      |  4 ++--
 heap_lang/wp_tactics.v | 16 ++++++++--------
 2 files changed, 10 insertions(+), 10 deletions(-)

diff --git a/heap_lang/tests.v b/heap_lang/tests.v
index 4bb9ca606..24374006d 100644
--- a/heap_lang/tests.v
+++ b/heap_lang/tests.v
@@ -62,7 +62,7 @@ Section LiftingTests.
     revert n1; apply löb_all_1=>n1.
     rewrite (comm uPred_and (â–  _)%I) assoc; apply const_elim_r=>?.
     (* first need to do the rec to get a later *)
-    wp_rec!.
+    wp_rec>.
     (* FIXME: ssr rewrite fails with "Error: _pattern_value_ is used in conclusion." *)
     rewrite ->(later_intro (Q _)); rewrite -!later_and; apply later_mono.
     wp_rec. wp_bin_op. wp_rec. wp_bin_op=> ?.
@@ -74,7 +74,7 @@ Section LiftingTests.
 
   Lemma Pred_spec n E Q : ▷ Q (LitV (n - 1)) ⊑ wp E (Pred 'n)%L Q.
   Proof.
-    wp_rec!; apply later_mono; wp_bin_op=> ?.
+    wp_rec>; apply later_mono; wp_bin_op=> ?.
     - wp_if. wp_un_op. wp_bin_op.
       wp_focus (FindPred _ _); rewrite -FindPred_spec.
       apply and_intro; first auto with I omega.
diff --git a/heap_lang/wp_tactics.v b/heap_lang/wp_tactics.v
index 7d72cbe62..c88954726 100644
--- a/heap_lang/wp_tactics.v
+++ b/heap_lang/wp_tactics.v
@@ -24,7 +24,7 @@ Tactic Notation "wp_value" :=
   match goal with
   | |- _ ⊑ wp ?E ?e ?Q => etransitivity; [|eapply wp_value; reflexivity]; simpl
   end.
-Tactic Notation "wp_rec" "!" :=
+Tactic Notation "wp_rec" ">" :=
   match goal with
   | |- _ ⊑ wp ?E ?e ?Q => reshape_expr e ltac:(fun K e' =>
     match eval cbv in e' with
@@ -32,8 +32,8 @@ Tactic Notation "wp_rec" "!" :=
        wp_bind K; etransitivity; [|eapply wp_rec; reflexivity]; wp_finish
     end)
   end.
-Tactic Notation "wp_rec" := wp_rec!; wp_strip_later.
-Tactic Notation "wp_bin_op" "!" :=
+Tactic Notation "wp_rec" := wp_rec>; wp_strip_later.
+Tactic Notation "wp_bin_op" ">" :=
   match goal with
   | |- _ ⊑ wp ?E ?e ?Q => reshape_expr e ltac:(fun K e' =>
     match eval cbv in e' with
@@ -45,8 +45,8 @@ Tactic Notation "wp_bin_op" "!" :=
     end)
   end.
 
-Tactic Notation "wp_bin_op" := wp_bin_op!; wp_strip_later.
-Tactic Notation "wp_un_op" "!" :=
+Tactic Notation "wp_bin_op" := wp_bin_op>; wp_strip_later.
+Tactic Notation "wp_un_op" ">" :=
   match goal with
   | |- _ ⊑ wp ?E ?e ?Q => reshape_expr e ltac:(fun K e' =>
     match eval cbv in e' with
@@ -54,8 +54,8 @@ Tactic Notation "wp_un_op" "!" :=
        wp_bind K; etransitivity; [|eapply wp_un_op; reflexivity]; wp_finish
     end)
   end.
-Tactic Notation "wp_un_op" := wp_un_op!; wp_strip_later.
-Tactic Notation "wp_if" "!" :=
+Tactic Notation "wp_un_op" := wp_un_op>; wp_strip_later.
+Tactic Notation "wp_if" ">" :=
   try wp_value;
   match goal with
   | |- _ ⊑ wp ?E ?e ?Q => reshape_expr e ltac:(fun K e' =>
@@ -65,7 +65,7 @@ Tactic Notation "wp_if" "!" :=
        etransitivity; [|apply wp_if_true || apply wp_if_false]; wp_finish
     end)
   end.
-Tactic Notation "wp_if" := wp_if!; wp_strip_later.
+Tactic Notation "wp_if" := wp_if>; wp_strip_later.
 Tactic Notation "wp_focus" open_constr(efoc) :=
   match goal with
   | |- _ ⊑ wp ?E ?e ?Q => reshape_expr e ltac:(fun K e' =>
-- 
GitLab