diff --git a/src/compiler/scala/tools/nsc/typechecker/Implicits.scala b/src/compiler/scala/tools/nsc/typechecker/Implicits.scala index bee2ae8e9932..5b89faa3e8a7 100644 --- a/src/compiler/scala/tools/nsc/typechecker/Implicits.scala +++ b/src/compiler/scala/tools/nsc/typechecker/Implicits.scala @@ -1042,8 +1042,7 @@ trait Implicits { if (sym.isPackageClass) sym.packageObject.typeOfThis else singleType(pre, companionSymbolOf(sym, context)) val infos = pre1.implicitMembers.iterator.map(mem => new ImplicitInfo(mem.name, pre1, mem)).toList - if (infos.nonEmpty) - infoMap += (sym -> infos) + infoMap += (sym -> infos) } val bts = tp.baseTypeSeq var i = 1 diff --git a/test/files/neg/t10081.check b/test/files/neg/t10081.check new file mode 100644 index 000000000000..992cc3864c48 --- /dev/null +++ b/test/files/neg/t10081.check @@ -0,0 +1,4 @@ +t10081.scala:2: error: value x is not a member of B[X] +trait B[X] extends A[B[X @unchecked]] { this.x } + ^ +one error found diff --git a/test/files/neg/t10081.scala b/test/files/neg/t10081.scala new file mode 100644 index 000000000000..a18442d2d88f --- /dev/null +++ b/test/files/neg/t10081.scala @@ -0,0 +1,2 @@ +trait A[_] +trait B[X] extends A[B[X @unchecked]] { this.x }