aboutsummaryrefslogtreecommitdiff
path: root/src/dotty/tools/dotc/core/pickling/UnPickler.scala
diff options
context:
space:
mode:
authorDmitry Petrashko <dmitry.petrashko@gmail.com>2015-03-28 20:36:35 +0100
committerDmitry Petrashko <dmitry.petrashko@gmail.com>2015-03-28 20:36:35 +0100
commitf2221d09328d121e82c5c857d744544ebea35939 (patch)
tree122265b5b8b2f02d6d67699e9d1fa011ca0a95fc /src/dotty/tools/dotc/core/pickling/UnPickler.scala
parent7021570065a8932462a62265dd29a9ff01c9051a (diff)
downloaddotty-f2221d09328d121e82c5c857d744544ebea35939.tar.gz
dotty-f2221d09328d121e82c5c857d744544ebea35939.tar.bz2
dotty-f2221d09328d121e82c5c857d744544ebea35939.zip
Make companion-module links in UnPickler
Diffstat (limited to 'src/dotty/tools/dotc/core/pickling/UnPickler.scala')
-rw-r--r--src/dotty/tools/dotc/core/pickling/UnPickler.scala7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/dotty/tools/dotc/core/pickling/UnPickler.scala b/src/dotty/tools/dotc/core/pickling/UnPickler.scala
index 3466e8c8e..27f87d8fb 100644
--- a/src/dotty/tools/dotc/core/pickling/UnPickler.scala
+++ b/src/dotty/tools/dotc/core/pickling/UnPickler.scala
@@ -118,11 +118,16 @@ object UnPickler {
denot.owner.thisType select denot.sourceModule
else selfInfo
if (!(denot.flagsUNSAFE is JavaModule)) ensureConstructor(denot.symbol.asClass, decls)
+
+ val scalacCompanion = denot.classSymbol.scalacLinkedClass
if (denot.flagsUNSAFE is Module) {
- val scalacCompanion = denot.classSymbol.scalacLinkedClass
val companionClassMethod = ctx.synthesizeCompanionMethod(nme.COMPANION_CLASS_METHOD, scalacCompanion, denot.classSymbol)
if (companionClassMethod.exists)
companionClassMethod.entered
+ } else {
+ val companionModuleMethod = ctx.synthesizeCompanionMethod(nme.COMPANION_MODULE_METHOD, scalacCompanion, denot.classSymbol)
+ if (companionModuleMethod.exists)
+ companionModuleMethod.entered
}
denot.info = ClassInfo(denot.owner.thisType, denot.classSymbol, parentRefs, decls, ost)