diff options
Diffstat (limited to 'sources/scala/tools/nsc/symtab/Symbols.scala')
-rwxr-xr-x | sources/scala/tools/nsc/symtab/Symbols.scala | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/sources/scala/tools/nsc/symtab/Symbols.scala b/sources/scala/tools/nsc/symtab/Symbols.scala index f0a7132f79..0966f9a034 100755 --- a/sources/scala/tools/nsc/symtab/Symbols.scala +++ b/sources/scala/tools/nsc/symtab/Symbols.scala @@ -187,6 +187,12 @@ import Flags._; final def needsImplClass: boolean = isTrait && (!hasFlag(INTERFACE) || hasFlag(lateINTERFACE)) && !isImplClass; + final def isImplOnly: boolean = + hasFlag(PRIVATE) || + (owner.isImplClass || owner.isTrait) && + (hasFlag(notPRIVATE | LIFTED) && !hasFlag(ACCESSOR | SUPERACCESSOR) || + isConstructor); + /** Is this symbol a module variable ? */ final def isModuleVar: boolean = isVariable && nme.isModuleVarName(name); @@ -632,18 +638,11 @@ import Flags._; * term symbol rename it by expanding its name to avoid name clashes */ final def makeNotPrivate(base: Symbol): unit = -/* if (isTerm && (this hasFlag PRIVATE)) { setFlag(notPRIVATE); if (!hasFlag(DEFERRED)) setFlag(lateFINAL); expandName(base) } -*/ - if (isTerm && !(this hasFlag notPRIVATE) && ((this hasFlag PRIVATE) || this.owner.isTerm)) { - setFlag(notPRIVATE); - if (!hasFlag(DEFERRED)) setFlag(lateFINAL); - expandName(base) - } /** change name by appending $$<fully-qualified-name-of-class `base'> * Do the same for any accessed symbols or setters/getters |