diff --git a/tests/neg/i4369a.scala b/tests/neg/i4369a.scala new file mode 100644 index 000000000000..a0c303534f7c --- /dev/null +++ b/tests/neg/i4369a.scala @@ -0,0 +1,2 @@ +trait X[R <: Z, Z >: X[R, R]] // error +class Z extends X[Z, Z] diff --git a/tests/neg/i4369b.scala b/tests/neg/i4369b.scala new file mode 100644 index 000000000000..917d907de83d --- /dev/null +++ b/tests/neg/i4369b.scala @@ -0,0 +1,2 @@ +trait X[R <: Z, Z >: X[R, R] <: X[R, R]] // error // error +class Z extends X[Z, Z] diff --git a/tests/neg/i4369c.scala b/tests/neg/i4369c.scala new file mode 100644 index 000000000000..a2bfbcb598d6 --- /dev/null +++ b/tests/neg/i4369c.scala @@ -0,0 +1,5 @@ +trait X { self => + type R <: Z + type Z >: X { type R = self.R; type Z = self.R } // error // error // error +} +class Foo extends X { type R = Foo; type Z = Foo }