diff options
Diffstat (limited to 'src/compiler/scala/tools/nsc/backend/MSILPlatform.scala')
-rw-r--r-- | src/compiler/scala/tools/nsc/backend/MSILPlatform.scala | 17 |
1 files changed, 5 insertions, 12 deletions
diff --git a/src/compiler/scala/tools/nsc/backend/MSILPlatform.scala b/src/compiler/scala/tools/nsc/backend/MSILPlatform.scala index 99878cc842..cf3be7c8cd 100644 --- a/src/compiler/scala/tools/nsc/backend/MSILPlatform.scala +++ b/src/compiler/scala/tools/nsc/backend/MSILPlatform.scala @@ -8,12 +8,11 @@ package backend import ch.epfl.lamp.compiler.msil.{ Type => MSILType } import util.MsilClassPath -import util.MsilClassPath.MsilContext -import util.ClassPath.{ isTraitImplementation } import msil.GenMSIL trait MSILPlatform extends Platform[MSILType] { import global._ + import definitions.{ ComparatorClass, BoxedNumberClass, getMember, getClass } if (settings.verbose.value) inform("[AssemRefs = " + settings.assemrefs.value + "]") @@ -25,19 +24,13 @@ trait MSILPlatform extends Platform[MSILType] { val runsRightAfter = None } with GenMSIL - lazy val classPath: MsilClassPath = { - val context = - if (isInlinerOn) new MsilContext - else new MsilContext { - override def isValidName(name: String) = !isTraitImplementation(name) - } - - new MsilClassPath(settings.assemextdirs.value, settings.assemrefs.value, settings.sourcepath.value, context) - } - + lazy val classPath = MsilClassPath.fromSettings(settings) def rootLoader = new loaders.NamespaceLoader(classPath) def platformPhases = List( genMSIL // generate .msil files ) + + lazy val externalEquals = getMember(ComparatorClass.linkedModuleOfClass, nme.equals_) + def isMaybeBoxed(sym: Symbol) = sym isNonBottomSubClass BoxedNumberClass } |