aboutsummaryrefslogtreecommitdiff
path: root/src/dotty/tools/backend/jvm/DottyBackendInterface.scala
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2015-11-08 12:47:47 +0100
committerMartin Odersky <odersky@gmail.com>2015-11-09 15:45:40 +0100
commite8687d683b7cb1642f007b991da420caba9b4898 (patch)
treeff6d0e4833fc0e716f1257fda8e5820e4e4621e1 /src/dotty/tools/backend/jvm/DottyBackendInterface.scala
parenta1bd4dc57c9f1dbf548fa9f6ea3c4d2895ca1d35 (diff)
downloaddotty-e8687d683b7cb1642f007b991da420caba9b4898.tar.gz
dotty-e8687d683b7cb1642f007b991da420caba9b4898.tar.bz2
dotty-e8687d683b7cb1642f007b991da420caba9b4898.zip
Make symbol methods in Definitions depend on implicit context
Otherwise they would always return the symbol in the original context where Definitions was first created. Also, cache two more arrays of symbols per run.
Diffstat (limited to 'src/dotty/tools/backend/jvm/DottyBackendInterface.scala')
-rw-r--r--src/dotty/tools/backend/jvm/DottyBackendInterface.scala4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/dotty/tools/backend/jvm/DottyBackendInterface.scala b/src/dotty/tools/backend/jvm/DottyBackendInterface.scala
index fb84377d7..1498be354 100644
--- a/src/dotty/tools/backend/jvm/DottyBackendInterface.scala
+++ b/src/dotty/tools/backend/jvm/DottyBackendInterface.scala
@@ -135,8 +135,8 @@ class DottyBackendInterface()(implicit ctx: Context) extends BackendInterface{
val externalEqualsNumObject: Symbol = defn.BoxesRunTimeModule.requiredMethod(nme.equalsNumObject)
val externalEquals: Symbol = defn.BoxesRunTimeClass.info.decl(nme.equals_).suchThat(toDenot(_).info.firstParamTypes.size == 2).symbol
val MaxFunctionArity: Int = Definitions.MaxFunctionArity
- val FunctionClass: Array[Symbol] = defn.FunctionClass.asInstanceOf[Array[Symbol]]
- val AbstractFunctionClass: Array[Symbol] = defn.AbstractFunctionClass.asInstanceOf[Array[Symbol]]
+ val FunctionClass: Array[Symbol] = defn.FunctionClassPerRun()
+ val AbstractFunctionClass: Array[Symbol] = defn.AbstractFunctionClassPerRun()
val PartialFunctionClass: Symbol = defn.PartialFunctionClass
val AbstractPartialFunctionClass: Symbol = defn.AbstractPartialFunctionClass
val String_valueOf: Symbol = defn.String_valueOf_Object