diff options
| author | Maxime Dénès | 2017-06-14 17:57:28 +0200 |
|---|---|---|
| committer | Maxime Dénès | 2017-06-14 17:57:28 +0200 |
| commit | d7dc4d4082d76e480b6d9932dcfad64249565e80 (patch) | |
| tree | 47c24efb25606259c3e0d9c2ac4da2160880a47e /test-suite/success | |
| parent | 510879170dae6edb989c76a96ded0ed00f192173 (diff) | |
| parent | f713e6c195d1de177b43cab7c2902f5160f6af9f (diff) | |
Merge PR#513: A fix to #5414 (ident bound by ltac names now known for "match").
Diffstat (limited to 'test-suite/success')
| -rw-r--r-- | test-suite/success/Case19.v | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/test-suite/success/Case19.v b/test-suite/success/Case19.v index e59828defe..ce98879a5f 100644 --- a/test-suite/success/Case19.v +++ b/test-suite/success/Case19.v @@ -17,3 +17,22 @@ Fail exists (fun x => with | eq_refl => eq_refl end). +Abort. + +(* Some tests with ltac matching on building "if" and "let" *) + +Goal forall b c d, (if negb b then c else d) = 0. +intros. +match goal with +|- (if ?b then ?c else ?d) = 0 => transitivity (if b then d else c) +end. +Abort. + +Definition swap {A} {B} '((x,y):A*B) := (y,x). + +Goal forall p, (let '(x,y) := swap p in x + y) = 0. +intros. +match goal with +|- (let '(x,y) := ?p in x + y) = 0 => transitivity (let (x,y) := p in x+y) +end. +Abort. |
