diff options
author | Martin Odersky <odersky@gmail.com> | 2017-03-27 18:23:07 +0200 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2017-04-11 09:33:11 +0200 |
commit | 21ab9a1355036aa953db4e1f87c8f0f9a06506b5 (patch) | |
tree | 3824573b541226f7e90609e7163383b471838667 /compiler/src/dotty/tools/dotc/transform/AugmentScala2Traits.scala | |
parent | 0efd6b93cf45be4cb211093185fef2923f53ef67 (diff) | |
download | dotty-21ab9a1355036aa953db4e1f87c8f0f9a06506b5.tar.gz dotty-21ab9a1355036aa953db4e1f87c8f0f9a06506b5.tar.bz2 dotty-21ab9a1355036aa953db4e1f87c8f0f9a06506b5.zip |
Get rid of ExpandedName flag
Diffstat (limited to 'compiler/src/dotty/tools/dotc/transform/AugmentScala2Traits.scala')
-rw-r--r-- | compiler/src/dotty/tools/dotc/transform/AugmentScala2Traits.scala | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/compiler/src/dotty/tools/dotc/transform/AugmentScala2Traits.scala b/compiler/src/dotty/tools/dotc/transform/AugmentScala2Traits.scala index 9c01aaa9a..594d85bfa 100644 --- a/compiler/src/dotty/tools/dotc/transform/AugmentScala2Traits.scala +++ b/compiler/src/dotty/tools/dotc/transform/AugmentScala2Traits.scala @@ -14,6 +14,7 @@ import DenotTransformers._ import Annotations._ import StdNames._ import NameOps._ +import NameExtractors._ import ast.Trees._ /** This phase augments Scala2 traits with implementation classes and with additional members @@ -66,7 +67,7 @@ class AugmentScala2Traits extends MiniPhaseTransform with IdentityDenotTransform meth.copy( owner = implClass, name = mold.name.asTermName, - flags = Method | JavaStatic | mold.flags & ExpandedName, + flags = Method | JavaStatic, info = fullyParameterizedType(mold.info, mixin)) } @@ -75,7 +76,7 @@ class AugmentScala2Traits extends MiniPhaseTransform with IdentityDenotTransform name = getter.ensureNotPrivate.name .expandedName(getter.owner, nme.TRAIT_SETTER_SEPARATOR) .asTermName.setterName, - flags = Method | Accessor | ExpandedName, + flags = Method | Accessor, info = MethodType(getter.info.resultType :: Nil, defn.UnitType)) for (sym <- mixin.info.decls) { @@ -89,7 +90,7 @@ class AugmentScala2Traits extends MiniPhaseTransform with IdentityDenotTransform else if (!sym.is(Deferred) && !sym.setter.exists && !sym.info.resultType.isInstanceOf[ConstantType]) traitSetter(sym.asTerm).enteredAfter(thisTransform) - if ((sym.is(PrivateAccessor, butNot = ExpandedName) && + if ((sym.is(PrivateAccessor) && !sym.name.is(ExpandedName) && (sym.isGetter || sym.isSetter)) // strangely, Scala 2 fields are also methods that have Accessor set. || sym.is(SuperAccessor)) // scala2 superaccessors are pickled as private, but are compiled as public expanded sym.ensureNotPrivate.installAfter(thisTransform) |