diff options
author | Hugo Herbelin <Hugo.Herbelin@inria.fr> | 2014-10-21 11:37:53 +0200 |
---|---|---|
committer | Hugo Herbelin <Hugo.Herbelin@inria.fr> | 2014-10-21 12:16:07 +0200 |
commit | 968e1eb50813fdcc402f689dbaedfcccceec61df (patch) | |
tree | f5872e14823a2d8cb64191823cc7e3252b02676a /test-suite/bugs/opened | |
parent | 890111168d80e6217c73bedda2f1381fa76524be (diff) |
More precise test for #3459.
Diffstat (limited to 'test-suite/bugs/opened')
-rw-r--r-- | test-suite/bugs/opened/3459.v | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/test-suite/bugs/opened/3459.v b/test-suite/bugs/opened/3459.v index db42d9605..949cace1d 100644 --- a/test-suite/bugs/opened/3459.v +++ b/test-suite/bugs/opened/3459.v @@ -1,9 +1,31 @@ +(* Bad interaction between clear and the typability of ltac constr bindings *) + +(* Original report *) + Goal 1 = 2. Proof. +(* This line used to fail with a Not_found up to some point, and then + to produce an ill-typed term *) match goal with | [ |- context G[2] ] => let y := constr:(fun x => $(let r := constr:(@eq Set x x) in clear x; exact r)$) in pose y end. +(* Add extra test for typability *) +match goal with P:?c |- _ => try (let x := type of c in idtac) || fail 2 end. Abort. + +(* Second report raising a Not_found at the time of 21 Oct 2014 *) + +Section F. + +Variable x : nat. + +Goal True. +evar (e : Prop). +assert e. +let r := constr:(eq_refl x) in clear x; exact r. +Abort. + +End F. |