diff options
| author | Frédéric Besson | 2019-10-04 09:41:18 +0200 |
|---|---|---|
| committer | Frédéric Besson | 2019-10-04 09:41:18 +0200 |
| commit | 87c17a6871ef4c21ff86a050297d33738c5a870a (patch) | |
| tree | a792e7784a08d2d77998b93d95bafac24effe6c5 /test-suite | |
| parent | ac54c19e1beca7663ae7742512d110a114ce9a62 (diff) | |
| parent | b25bdeaed71fdd823262f74ae6ed3935d3322e9f (diff) | |
Merge PR #10806: Micromega tactics are no longer confused by primitive projections
Reviewed-by: fajb
Diffstat (limited to 'test-suite')
| -rw-r--r-- | test-suite/bugs/closed/bug_9512.v | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/test-suite/bugs/closed/bug_9512.v b/test-suite/bugs/closed/bug_9512.v new file mode 100644 index 0000000000..25285622a9 --- /dev/null +++ b/test-suite/bugs/closed/bug_9512.v @@ -0,0 +1,35 @@ +Require Import Coq.ZArith.BinInt Coq.omega.Omega Coq.micromega.Lia. + +Set Primitive Projections. +Record params := { width : Z }. +Definition p : params := Build_params 64. + +Set Printing All. + +Goal width p = 0%Z -> width p = 0%Z. + intros. + + assert_succeeds (enough True; [omega|]). + assert_succeeds (enough True; [lia|]). + +(* H : @eq Z (width p) Z0 *) +(* ============================ *) +(* @eq Z (width p) Z0 *) + + change tt with tt in H. + +(* H : @eq Z (width p) Z0 *) +(* ============================ *) +(* @eq Z (width p) Z0 *) + + assert_succeeds (enough True; [lia|]). + (* Tactic failure: <tactic closure> fails. *) + (* assert_succeeds (enough True; [omega|]). *) + (* Tactic failure: <tactic closure> fails. *) + + (* omega. *) + (* Error: Omega can't solve this system *) + + lia. + (* Tactic failure: Cannot find witness. *) +Qed. |
