diff options
Diffstat (limited to 'test-suite/failure')
-rw-r--r-- | test-suite/failure/inductive1.v | 4 | ||||
-rw-r--r-- | test-suite/failure/inductive2.v | 4 | ||||
-rw-r--r-- | test-suite/failure/inductive3.v | 5 |
3 files changed, 13 insertions, 0 deletions
diff --git a/test-suite/failure/inductive1.v b/test-suite/failure/inductive1.v new file mode 100644 index 00000000..3b57d919 --- /dev/null +++ b/test-suite/failure/inductive1.v @@ -0,0 +1,4 @@ +(* A check that sort-polymorphic product is not set too low *) + +Inductive prod (A B:Type) : Type := pair : A -> B -> prod A B. +Check (fun (A:Type) (B:Prop) => (prod A B : Prop)). diff --git a/test-suite/failure/inductive2.v b/test-suite/failure/inductive2.v new file mode 100644 index 00000000..b77474be --- /dev/null +++ b/test-suite/failure/inductive2.v @@ -0,0 +1,4 @@ +(* A check that sort-polymorphic product is not set too low *) + +Inductive prod (A B:Type) : Type := pair : A -> B -> prod A B. +Check (fun (A:Prop) (B:Type) => (prod A B : Prop)). diff --git a/test-suite/failure/inductive3.v b/test-suite/failure/inductive3.v new file mode 100644 index 00000000..e5a4e1b6 --- /dev/null +++ b/test-suite/failure/inductive3.v @@ -0,0 +1,5 @@ +(* Check that the nested inductive types positivity check avoids recursively + non uniform parameters (at least if these parameters break positivity) *) + +Inductive t (A:Type) : Type := c : t (A -> A) -> t A. +Inductive u : Type := d : u | e : t u -> u. |