diff options
Diffstat (limited to 'sources/scalac/symtab/SymbolTablePrinter.java')
-rw-r--r-- | sources/scalac/symtab/SymbolTablePrinter.java | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/sources/scalac/symtab/SymbolTablePrinter.java b/sources/scalac/symtab/SymbolTablePrinter.java index d70d62d3c2..89fe42d869 100644 --- a/sources/scalac/symtab/SymbolTablePrinter.java +++ b/sources/scalac/symtab/SymbolTablePrinter.java @@ -407,7 +407,10 @@ public class SymbolTablePrinter { case ThisType(Symbol clasz): if (global.debug || !clasz.isModuleClass()) return type; Type prefix = getTypeToPrintForType(clasz.owner().thisType()); - return Type.singleType(prefix, clasz.module()); + Symbol module = clasz.sourceModule(); + if (module.owner() != clasz.owner()) return type; + if (!module.type().isObjectType()) return type; + return Type.singleType(prefix, module); case SingleType(_, Symbol sym): if (global.debug) return type; if (sym.isSynthetic()) return type.widen(); |