From d01ecb733dc8990d1f5d432e1fb9eb488bb7e3b4 Mon Sep 17 00:00:00 2001 From: Dmitry Petrashko Date: Wed, 25 Mar 2015 18:21:58 +0100 Subject: Add companion class methods for files read from scala & java --- src/dotty/tools/dotc/core/pickling/UnPickler.scala | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'src/dotty/tools/dotc/core/pickling/UnPickler.scala') diff --git a/src/dotty/tools/dotc/core/pickling/UnPickler.scala b/src/dotty/tools/dotc/core/pickling/UnPickler.scala index 170ebd28b..e22d045ac 100644 --- a/src/dotty/tools/dotc/core/pickling/UnPickler.scala +++ b/src/dotty/tools/dotc/core/pickling/UnPickler.scala @@ -118,6 +118,16 @@ object UnPickler { denot.owner.thisType select denot.sourceModule else selfInfo if (!(denot.flagsUNSAFE is JavaModule)) ensureConstructor(denot.symbol.asClass, decls) + if (denot.flagsUNSAFE is Module) { + val scalacCompanion = denot.classSymbol.scalacLinkedClass + if (scalacCompanion.exists) + ctx.newSymbol( + owner = denot.classSymbol, + name = nme.COMPANION_CLASS_METHOD, + flags = Flags.Synthetic | Flags.Private, + info = ExprType(scalacCompanion.typeRef)).entered + } + denot.info = ClassInfo(denot.owner.thisType, denot.classSymbol, parentRefs, decls, ost) } } -- cgit v1.2.3