summaryrefslogtreecommitdiff
path: root/test-suite/bugs/closed/5547.v
diff options
context:
space:
mode:
Diffstat (limited to 'test-suite/bugs/closed/5547.v')
-rw-r--r--test-suite/bugs/closed/5547.v16
1 files changed, 16 insertions, 0 deletions
diff --git a/test-suite/bugs/closed/5547.v b/test-suite/bugs/closed/5547.v
new file mode 100644
index 00000000..79633f48
--- /dev/null
+++ b/test-suite/bugs/closed/5547.v
@@ -0,0 +1,16 @@
+(* Checking typability of intermediate return predicates in nested pattern-matching *)
+
+Inductive A : (Type->Type) -> Type := J : A (fun x => x).
+Definition ret (x : nat * A (fun x => x))
+ := match x return Type with
+ | (y,z) => match z in A f return f Type with
+ | J => bool
+ end
+ end.
+Definition foo : forall x, ret x.
+Proof.
+Fail refine (fun x
+ => match x return ret x with
+ | (y,J) => true
+ end
+ ).