File tree Expand file tree Collapse file tree 2 files changed +16
-1
lines changed
compiler/src/dotty/tools/dotc/transform Expand file tree Collapse file tree 2 files changed +16
-1
lines changed Original file line number Diff line number Diff line change @@ -56,7 +56,13 @@ class Bridges(root: ClassSymbol)(implicit ctx: Context) {
5656 bridgesScope.lookupAll(member.name).exists(bridge =>
5757 bridgeTarget(bridge) == member && bridge.signature == other.signature)
5858 def info (sym : Symbol )(implicit ctx : Context ) = sym.info
59- def desc (sym : Symbol )= i " $sym${info(sym)(preErasureCtx)} in ${sym.owner}"
59+ def desc (sym : Symbol )= {
60+ val infoStr = info(sym)(preErasureCtx) match {
61+ case ExprType (info) => i " : $info"
62+ case info => info.show
63+ }
64+ i " $sym$infoStr in ${sym.owner}"
65+ }
6066 if (member.signature == other.signature) {
6167 if (! member.info.matches(other.info))
6268 ctx.error(em """ bridge generated for member ${desc(member)}
Original file line number Diff line number Diff line change 1+ class X (val underlying : Object ) extends AnyVal
2+
3+ trait Producer [T ] {
4+ def produce : T
5+ }
6+
7+ class XProducer extends Producer [X ] {
8+ def produce = new X (null ) // error
9+ }
You can’t perform that action at this time.
0 commit comments