diff options
author | Matthieu Sozeau <matthieu.sozeau@inria.fr> | 2018-06-04 14:47:36 +0200 |
---|---|---|
committer | Matthieu Sozeau <matthieu.sozeau@inria.fr> | 2018-06-04 14:47:36 +0200 |
commit | 0a829c6ac232b0ea786716709b0d01c707548089 (patch) | |
tree | c5279bc173449f1e83a884c5e74da773c2c64bc6 /test-suite/bugs/closed | |
parent | d5de86d0606e1c3dc88c48bf3ec2e820b5485d8f (diff) | |
parent | 15e43996b342f2eddf0c6c0bd4166e757589337e (diff) |
Merge PR #7199: Fixes #7195: missing freshness condition in Ltac pattern-matching names
Diffstat (limited to 'test-suite/bugs/closed')
-rw-r--r-- | test-suite/bugs/closed/7195.v | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/test-suite/bugs/closed/7195.v b/test-suite/bugs/closed/7195.v new file mode 100644 index 000000000..ea97747ac --- /dev/null +++ b/test-suite/bugs/closed/7195.v @@ -0,0 +1,12 @@ +(* A disjoint-names condition was missing when matching names in Ltac + pattern-matching *) + +Goal True. + let x := (eval cbv beta zeta in (fun P => let Q := P in fun P => P + Q)) in + unify x (fun a b => b + a); (* success *) + let x' := lazymatch x with + | (fun (a : ?A) (b : ?B) => ?k) + => constr:(fun (a : A) (b : B) => k) + end in + unify x x'. +Abort. |