summaryrefslogtreecommitdiff
path: root/sources/scala/tools/nsc/symtab/Symbols.scala
diff options
context:
space:
mode:
Diffstat (limited to 'sources/scala/tools/nsc/symtab/Symbols.scala')
-rwxr-xr-xsources/scala/tools/nsc/symtab/Symbols.scala13
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