aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/BoundedArithmetic/DoubleBounded.v1
-rw-r--r--src/BoundedArithmetic/DoubleBoundedProofs.v1
-rw-r--r--src/Util/LetIn.v4
3 files changed, 6 insertions, 0 deletions
diff --git a/src/BoundedArithmetic/DoubleBounded.v b/src/BoundedArithmetic/DoubleBounded.v
index 5cf48cd3b..09a1926f2 100644
--- a/src/BoundedArithmetic/DoubleBounded.v
+++ b/src/BoundedArithmetic/DoubleBounded.v
@@ -7,6 +7,7 @@ Require Import Crypto.Util.Tuple.
Require Import Crypto.Util.ListUtil.
Require Import Crypto.Util.Notations.
Require Import Crypto.Util.LetIn.
+Import Bug5107WorkAround.
Local Open Scope nat_scope.
Local Open Scope Z_scope.
diff --git a/src/BoundedArithmetic/DoubleBoundedProofs.v b/src/BoundedArithmetic/DoubleBoundedProofs.v
index 07727ea0d..ef6e3c5c0 100644
--- a/src/BoundedArithmetic/DoubleBoundedProofs.v
+++ b/src/BoundedArithmetic/DoubleBoundedProofs.v
@@ -13,6 +13,7 @@ Require Import Crypto.Util.ListUtil.
Require Import Crypto.Util.Tactics.
Require Import Crypto.Util.Notations.
Require Import Crypto.Util.LetIn.
+Import Bug5107WorkAround.
Import ListNotations.
Local Open Scope list_scope.
diff --git a/src/Util/LetIn.v b/src/Util/LetIn.v
index 366ae5dff..db09baf9c 100644
--- a/src/Util/LetIn.v
+++ b/src/Util/LetIn.v
@@ -8,6 +8,10 @@ Definition Let_In_pf {A P} (x : A) (f : forall a : A, a = x -> P a) : P x := let
Notation "'dlet' x := y 'in' f" := (Let_In y (fun x => f)).
Notation "'pflet' x , pf := y 'in' f" := (Let_In_pf y (fun x pf => f)).
+Module Bug5107WorkAround.
+ Notation "'dlet' x := y 'in' f" := (Let_In (P:=fun _ => _) y (fun x => f)).
+End Bug5107WorkAround.
+
Global Instance Proper_Let_In_nd_changebody {A P R} {Reflexive_R:@Reflexive P R}
: Proper (eq ==> pointwise_relation _ R ==> R) (@Let_In A (fun _ => P)).
Proof. lazy; intros; subst; auto; congruence. Qed.