aboutsummaryrefslogtreecommitdiff
path: root/compiler/src/dotty/tools/dotc/core/unpickleScala2/Scala2Unpickler.scala
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2017-03-27 18:55:50 +0200
committerMartin Odersky <odersky@gmail.com>2017-04-11 09:33:11 +0200
commitea96ecda77ab99969a65b66173260e66b199be74 (patch)
tree18ee2854bc43b1d8ca55d117e74dfcd0350249b1 /compiler/src/dotty/tools/dotc/core/unpickleScala2/Scala2Unpickler.scala
parent21ab9a1355036aa953db4e1f87c8f0f9a06506b5 (diff)
downloaddotty-ea96ecda77ab99969a65b66173260e66b199be74.tar.gz
dotty-ea96ecda77ab99969a65b66173260e66b199be74.tar.bz2
dotty-ea96ecda77ab99969a65b66173260e66b199be74.zip
Get rid of SuperAccessor flag
Diffstat (limited to 'compiler/src/dotty/tools/dotc/core/unpickleScala2/Scala2Unpickler.scala')
-rw-r--r--compiler/src/dotty/tools/dotc/core/unpickleScala2/Scala2Unpickler.scala10
1 files changed, 7 insertions, 3 deletions
diff --git a/compiler/src/dotty/tools/dotc/core/unpickleScala2/Scala2Unpickler.scala b/compiler/src/dotty/tools/dotc/core/unpickleScala2/Scala2Unpickler.scala
index aed0e97f1..976eb5df4 100644
--- a/compiler/src/dotty/tools/dotc/core/unpickleScala2/Scala2Unpickler.scala
+++ b/compiler/src/dotty/tools/dotc/core/unpickleScala2/Scala2Unpickler.scala
@@ -18,6 +18,7 @@ import printing.Printer
import io.AbstractFile
import util.common._
import typer.Checking.checkNonCyclic
+import transform.SymUtils._
import PickleBuffer._
import PickleFormat._
import Decorators._
@@ -441,7 +442,10 @@ class Scala2Unpickler(bytes: Array[Byte], classRoot: ClassDenotation, moduleClas
name = name.unmangleExpandedName
flags = flags &~ Scala2ExpandedName
}
- if (flags is SuperAccessor) name = name.asTermName.unmangleSuperName
+ if (flags is Scala2SuperAccessor) {
+ name = name.asTermName.unmangleSuperName
+ flags = flags &~ Scala2SuperAccessor
+ }
def isClassRoot = (name == classRoot.name) && (owner == classRoot.owner) && !(flags is ModuleClass)
def isModuleClassRoot = (name == moduleClassRoot.name) && (owner == moduleClassRoot.owner) && (flags is Module)
@@ -555,9 +559,9 @@ class Scala2Unpickler(bytes: Array[Byte], classRoot: ClassDenotation, moduleClas
else tp1
if (denot.isConstructor) addConstructorTypeParams(denot)
if (atEnd) {
- assert(!(denot is SuperAccessor), denot)
+ assert(!denot.isSuperAccessor, denot)
} else {
- assert(denot is (SuperAccessor | ParamAccessor), denot)
+ assert(denot.is(ParamAccessor) || denot.isSuperAccessor, denot)
def disambiguate(alt: Symbol) = { // !!! DEBUG
ctx.debugTraceIndented(s"disambiguating ${denot.info} =:= ${denot.owner.thisType.memberInfo(alt)} ${denot.owner}") {
denot.info matches denot.owner.thisType.memberInfo(alt)