aboutsummaryrefslogtreecommitdiff
path: root/tests/untried/neg/t4044.scala
diff options
context:
space:
mode:
Diffstat (limited to 'tests/untried/neg/t4044.scala')
-rw-r--r--tests/untried/neg/t4044.scala16
1 files changed, 16 insertions, 0 deletions
diff --git a/tests/untried/neg/t4044.scala b/tests/untried/neg/t4044.scala
new file mode 100644
index 000000000..eeb1d11ac
--- /dev/null
+++ b/tests/untried/neg/t4044.scala
@@ -0,0 +1,16 @@
+object Test {
+ def M[N[O[_]]] = ()
+ type A[_] = Any
+ type B[_[_]] = Any
+ type C[_[_[_]]] = Any
+
+ M[Any] // okay, Any is kind overloaded.
+
+ M[AnyRef] // error, (AnyRef :: *) not kind-conformant to (N :: * -> * -> *)
+
+ M[A] // error, (A :: (* -> *) not kind-conformant to (N :: * -> * -> *)
+
+ M[B] // okay, (B :: (* -> * -> *) is kind-conformant to (N :: * -> * -> *)
+
+ M[C] // error, (C :: (* -> * -> * -> *) not kind-conformant to (N :: * -> * -> *)
+}