diff options
Diffstat (limited to 'src/compiler/scala/tools/nsc/backend/opt/DeadCodeElimination.scala')
-rw-r--r-- | src/compiler/scala/tools/nsc/backend/opt/DeadCodeElimination.scala | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/src/compiler/scala/tools/nsc/backend/opt/DeadCodeElimination.scala b/src/compiler/scala/tools/nsc/backend/opt/DeadCodeElimination.scala index 6f8448ad0a..68412098e3 100644 --- a/src/compiler/scala/tools/nsc/backend/opt/DeadCodeElimination.scala +++ b/src/compiler/scala/tools/nsc/backend/opt/DeadCodeElimination.scala @@ -271,13 +271,12 @@ abstract class DeadCodeElimination extends SubComponent { abort("could not find init in: " + method) } - lazy val RuntimePackage = definitions.getModule("scala.runtime") /** Is 'sym' a side-effecting method? TODO: proper analysis. */ private def isSideEffecting(sym: Symbol): Boolean = { !((sym.isGetter && !sym.isLazy) || (sym.isConstructor && !(sym.owner == method.symbol.owner && method.symbol.isConstructor) // a call to another constructor - && sym.owner.owner == RuntimePackage.moduleClass) + && sym.owner.owner == definitions.RuntimePackage.moduleClass) || (sym.isConstructor && inliner.isClosureClass(sym.owner)) /* || definitions.isBox(sym) || definitions.isUnbox(sym)*/) |