diff --git a/compiler/src/dotty/tools/dotc/typer/Typer.scala b/compiler/src/dotty/tools/dotc/typer/Typer.scala index e35b0c9bba68..833e25a55976 100644 --- a/compiler/src/dotty/tools/dotc/typer/Typer.scala +++ b/compiler/src/dotty/tools/dotc/typer/Typer.scala @@ -1593,6 +1593,7 @@ class Typer extends Namer } else seenParents += psym if (tree.isType) { + checkSimpleKinded(result) // Not needed for constructor calls, as type arguments will be inferred. if (psym.is(Trait) && !cls.is(Trait) && !cls.superClass.isSubClass(psym)) result = maybeCall(result, psym, psym.primaryConstructor.info) } diff --git a/tests/neg/i1643.scala b/tests/neg/i1643.scala index 889233b3a0ca..1e3affa7f1c9 100644 --- a/tests/neg/i1643.scala +++ b/tests/neg/i1643.scala @@ -1,4 +1,4 @@ -trait T extends Array { // error +trait T extends Array { // error // error def t1(as: String*): Array[String] = { varargs1(as: _*) } // error def t2(as: String*): Array[String] = { super.varargs1(as: _*) } // error } diff --git a/tests/neg/i5010.scala b/tests/neg/i5010.scala new file mode 100644 index 000000000000..7cdf67c8135b --- /dev/null +++ b/tests/neg/i5010.scala @@ -0,0 +1 @@ +class i0 extends Function0 // error diff --git a/tests/neg/parser-stability-16.scala b/tests/neg/parser-stability-16.scala index 1afa9c8c04bc..5d6fcdd98c0c 100644 --- a/tests/neg/parser-stability-16.scala +++ b/tests/neg/parser-stability-16.scala @@ -1,6 +1,6 @@ class x0[x0] { val x1 : x0 } -trait x3 extends x0 { +trait x3 extends x0 { // error x1 = 0 object // error // error \ No newline at end of file diff --git a/tests/neg/parser-stability-7.scala b/tests/neg/parser-stability-7.scala index 98ed2cb009a1..27d391ed9396 100644 --- a/tests/neg/parser-stability-7.scala +++ b/tests/neg/parser-stability-7.scala @@ -1,7 +1,7 @@ class x0[x1] { def x2: x1 } -trait x3 extends x0 { +trait x3 extends x0 { // error class x2 var x2 = 0 // error var x4 = x5 x2 // error diff --git a/tests/run/t3613.scala b/tests/run/t3613.scala index 1293f62c0fd4..199ed2ee1933 100644 --- a/tests/run/t3613.scala +++ b/tests/run/t3613.scala @@ -2,7 +2,7 @@ class Boopy { private val s = new Schnuck def observer : PartialFunction[ Any, Unit ] = s.observer - private class Schnuck extends javax.swing.AbstractListModel { + private class Schnuck extends javax.swing.AbstractListModel[Nothing] { model => val observer : PartialFunction[ Any, Unit ] = { case "Boopy" => fireIntervalAdded( model, 0, 1 )