diff options
| author | Pierre-Marie Pédrot | 2016-04-24 15:33:09 +0200 |
|---|---|---|
| committer | Pierre-Marie Pédrot | 2016-04-24 15:45:23 +0200 |
| commit | 65578a55b81252e2c4b006728522839a9e37cd5c (patch) | |
| tree | 3483e373cb116211e00ee664dea78efe874d39ec /test-suite | |
| parent | fd13e21ccb89e2fa3a80074f9d7afd8b0638fdcb (diff) | |
| parent | 96bb190caa138c91b4d5e5f96d6f179811a177c8 (diff) | |
Merge branch 'v8.5'
Diffstat (limited to 'test-suite')
| -rw-r--r-- | test-suite/bugs/closed/4603.v | 10 | ||||
| -rw-r--r-- | test-suite/output/Notations2.out | 4 | ||||
| -rw-r--r-- | test-suite/output/Notations2.v | 8 |
3 files changed, 22 insertions, 0 deletions
diff --git a/test-suite/bugs/closed/4603.v b/test-suite/bugs/closed/4603.v new file mode 100644 index 0000000000..e7567623a6 --- /dev/null +++ b/test-suite/bugs/closed/4603.v @@ -0,0 +1,10 @@ +Axiom A : Type. + +Goal True. exact I. +Check (fun P => P A). +Abort. + +Goal True. +Definition foo (A : Type) : Prop:= True. + set (x:=foo). split. +Qed.
\ No newline at end of file diff --git a/test-suite/output/Notations2.out b/test-suite/output/Notations2.out index 58ec1de563..6ff1d38372 100644 --- a/test-suite/output/Notations2.out +++ b/test-suite/output/Notations2.out @@ -50,3 +50,7 @@ end : nat -> nat # _ : nat => 2 : nat -> nat +# x : nat => # H : x <= 0 => exist (le x) 0 H + : ∀ x : nat, x <= 0 -> {x0 : nat | x <= x0} +exist (Q x) y conj + : {x0 : A | Q x x0} diff --git a/test-suite/output/Notations2.v b/test-suite/output/Notations2.v index e53c94ef0a..4e0d135d7d 100644 --- a/test-suite/output/Notations2.v +++ b/test-suite/output/Notations2.v @@ -68,6 +68,7 @@ Check let' f x y (a:=0) z (b:bool) := x+y+z+1 in f 0 1 2. (* In practice, only the printing rule is used here *) (* Note: does not work for pattern *) +Module A. Notation "f ( x )" := (f x) (at level 10, format "f ( x )"). Check fun f x => f x + S x. @@ -77,6 +78,7 @@ Notation plus2 n := (S (S n)). (* plus2 was not correctly printed in the two following tests in 8.3pl1 *) Print plus2. Check fun n => match n with list1 => 0 | _ => 2 end. +End A. (* This one is not fully satisfactory because binders in the same type are re-factorized and parentheses are needed even for atomic binder @@ -98,3 +100,9 @@ Notation "# x : T => t" := (fun x : T => t) Check # x : nat => x. Check # _ : nat => 2. + +(* Check bug 4677 *) +Check fun x (H:le x 0) => exist (le x) 0 H. + +Parameters (A : Set) (x y : A) (Q : A -> A -> Prop) (conj : Q x y). +Check (exist (Q x) y conj). |
