Skip to content

Commit a8e9877

Browse files
committed
fixup for Also mutate module *class*'s owner in ChangeOwnerTraverser
1 parent 79ed536 commit a8e9877

File tree

1 file changed

+2
-14
lines changed

1 file changed

+2
-14
lines changed

src/reflect/scala/reflect/internal/Internals.scala

Lines changed: 2 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -60,19 +60,7 @@ trait Internals extends api.Internals {
6060
def typeDef(sym: Symbol): TypeDef = self.TypeDef(sym)
6161
def labelDef(sym: Symbol, params: List[Symbol], rhs: Tree): LabelDef = self.LabelDef(sym, params, rhs)
6262

63-
def changeOwner(tree: Tree, prev: Symbol, next: Symbol): tree.type = {
64-
object changeOwnerAndModuleClassTraverser extends ChangeOwnerTraverser(prev, next) {
65-
override def traverse(tree: Tree) {
66-
tree match {
67-
case _: DefTree => change(tree.symbol.moduleClass)
68-
case _ => // do nothing
69-
}
70-
super.traverse(tree)
71-
}
72-
}
73-
changeOwnerAndModuleClassTraverser.traverse(tree)
74-
tree
75-
}
63+
def changeOwner(tree: Tree, prev: Symbol, next: Symbol): tree.type = { new ChangeOwnerTraverser(prev, next).traverse(tree); tree }
7664

7765
lazy val gen = self.treeBuild
7866

@@ -170,4 +158,4 @@ trait Internals extends api.Internals {
170158
def mkZero(tp: Type): Tree = self.gen.mkZero(tp)
171159
def mkCast(tree: Tree, pt: Type): Tree = self.gen.mkCast(tree, pt)
172160
}
173-
}
161+
}

0 commit comments

Comments
 (0)