aboutsummaryrefslogtreecommitdiff
path: root/test-suite/bugs
diff options
context:
space:
mode:
Diffstat (limited to 'test-suite/bugs')
-rw-r--r--test-suite/bugs/closed/bug_11811.v13
-rw-r--r--test-suite/bugs/closed/bug_11846.v16
-rw-r--r--test-suite/bugs/closed/bug_9058.v16
3 files changed, 45 insertions, 0 deletions
diff --git a/test-suite/bugs/closed/bug_11811.v b/test-suite/bugs/closed/bug_11811.v
new file mode 100644
index 0000000000..a73494b630
--- /dev/null
+++ b/test-suite/bugs/closed/bug_11811.v
@@ -0,0 +1,13 @@
+
+Unset Positivity Checking.
+
+Inductive foo : Type -> Type :=
+| bar : foo (foo unit)
+| baz : foo nat.
+
+Definition toto : forall A, foo A -> {A = foo unit} + {A = nat}.
+Proof.
+ intros A x. destruct x; intuition.
+Defined.
+
+Check (eq_refl : toto _ baz = right eq_refl).
diff --git a/test-suite/bugs/closed/bug_11846.v b/test-suite/bugs/closed/bug_11846.v
new file mode 100644
index 0000000000..53517e7703
--- /dev/null
+++ b/test-suite/bugs/closed/bug_11846.v
@@ -0,0 +1,16 @@
+Require Import FunInd.
+
+Inductive tree : Type :=
+| Node : unit -> tree.
+
+Definition height (s : tree) : unit :=
+match s with
+| Node h => h
+end.
+
+Definition bal : forall l, let h := height l in tree := fun l =>
+ let h := height l in
+ Node h.
+
+Set Warnings "+all".
+Functional Scheme bal_ind := Induction for bal Sort Prop.
diff --git a/test-suite/bugs/closed/bug_9058.v b/test-suite/bugs/closed/bug_9058.v
new file mode 100644
index 0000000000..6de8324641
--- /dev/null
+++ b/test-suite/bugs/closed/bug_9058.v
@@ -0,0 +1,16 @@
+Class A (X : Type) := {}.
+Hint Mode A ! : typeclass_instances.
+
+Class B X {aX: A X} Y := { opB: X -> Y -> Y }.
+Hint Mode B - - ! : typeclass_instances.
+
+Section Section.
+
+Context X {aX: A X} Y {bY: B X Y}.
+
+(* Set Typeclasses Debug. *)
+
+Let ok := fun (x : X) (y : Y) => opB x y.
+Let ok' := fun x (y : Y) => opB x y.
+
+End Section.