File tree 2 files changed +9
-6
lines changed
compiler/src/dotty/tools/dotc/core 2 files changed +9
-6
lines changed Original file line number Diff line number Diff line change @@ -1646,13 +1646,11 @@ object SymDenotations {
1646
1646
case tp @ AppliedType (tycon, args) =>
1647
1647
val subsym = tycon.typeSymbol
1648
1648
if (subsym eq symbol) tp
1649
- else subsym.denot match {
1650
- case clsd : ClassDenotation =>
1651
- val tparams = clsd.typeParams
1652
- if (tparams.hasSameLengthAs(args)) baseTypeOf(tycon).subst(tparams, args)
1653
- else NoType
1654
- case _ =>
1649
+ else tycon.typeParams match {
1650
+ case LambdaParam (_, _) :: _ =>
1655
1651
baseTypeOf(tp.superType)
1652
+ case tparams : List [Symbol @ unchecked] =>
1653
+ baseTypeOf(tycon).subst(tparams, args)
1656
1654
}
1657
1655
case tp : TypeProxy =>
1658
1656
baseTypeOf(tp.superType)
Original file line number Diff line number Diff line change
1
+ object Test {
2
+ def foo [C [_]](implicit t : C [Char ] => Traversable [Char ]): C [Char ] = ???
3
+
4
+ val a : List [Char ] = foo
5
+ }
You can’t perform that action at this time.
0 commit comments