File tree Expand file tree Collapse file tree 1 file changed +12
-11
lines changed
compiler/src/dotty/tools/dotc/transform Expand file tree Collapse file tree 1 file changed +12
-11
lines changed Original file line number Diff line number Diff line change @@ -29,18 +29,19 @@ class InterceptedMethods extends MiniPhase {
2929 override def phaseName : String = InterceptedMethods .name
3030
3131 // this should be removed if we have guarantee that ## will get Apply node
32- override def transformSelect (tree : tpd.Select )(implicit ctx : Context ): Tree = {
33- if (tree.symbol.isTerm && (defn.Any_## eq tree.symbol.asTerm)) {
34- val rewrite = poundPoundValue(tree.qualifier)
35- ctx.log(s " $phaseName rewrote $tree to $rewrite" )
36- rewrite
37- }
38- else tree
39- }
32+ override def transformSelect (tree : tpd.Select )(implicit ctx : Context ): Tree =
33+ transformRefTree(tree)
34+
35+ override def transformIdent (tree : tpd.Ident )(implicit ctx : Context ): Tree =
36+ transformRefTree(tree)
4037
41- override def transformIdent (tree : tpd.Ident )(implicit ctx : Context ): Tree = {
42- if (tree.symbol.isTerm && (defn.Any_## eq tree.symbol.asTerm)) {
43- val rewrite = poundPoundValue(tpd.desugarIdentPrefix(tree))
38+ private def transformRefTree (tree : RefTree )(implicit ctx : Context ): Tree = {
39+ if (tree.symbol.isTerm && (defn.Any_## eq tree.symbol)) {
40+ val qual = tree match {
41+ case id : Ident => tpd.desugarIdentPrefix(id)
42+ case sel : Select => sel.qualifier
43+ }
44+ val rewrite = poundPoundValue(qual)
4445 ctx.log(s " $phaseName rewrote $tree to $rewrite" )
4546 rewrite
4647 }
You can’t perform that action at this time.
0 commit comments