@@ -347,6 +347,7 @@ class TreeUnpickler(reader: TastyReader, tastyName: TastyName.Table) {
347
347
isAbstractType
348
348
var flags = givenFlags
349
349
if (lacksDefinition) flags |= Deferred
350
+ if (tag == DEFDEF ) flags |= Method
350
351
if (ctx.mode.is(Mode .InSuperCall ) && ! flags.is(ParamOrAccessor )) flags |= InSuperCall
351
352
if (ctx.owner.isClass) {
352
353
if (tag == TYPEPARAM ) flags |= Param | ExpandedName // TODO check name to determine ExpandedName
@@ -584,6 +585,7 @@ class TreeUnpickler(reader: TastyReader, tastyName: TastyName.Table) {
584
585
ValDef (sym.asTerm)
585
586
}
586
587
else {
588
+ sym.setFlag(Method )
587
589
sym.info = ExprType (info)
588
590
pickling.println(i " reading param alias $name -> $currentAddr" )
589
591
DefDef (Nil , Nil , TypeTree (info))
@@ -693,9 +695,9 @@ class TreeUnpickler(reader: TastyReader, tastyName: TastyName.Table) {
693
695
}
694
696
def readRest (name : Name , sig : Signature ) = {
695
697
val unshadowed = if (name.isShadowedName) name.revertShadowed else name
696
- val sel = readQual(unshadowed).selectWithSig(unshadowed, sig )
697
- if (unshadowed != name) sel.withType(sel.tpe. asInstanceOf [ NamedType ].shadowed )
698
- else sel
698
+ val qual = readQual(name )
699
+ untpd. Select (qual, unshadowed )
700
+ .withType( TermRef .withSig(qual.tpe.widenIfUnstable, name.asTermName, sig))
699
701
}
700
702
readNameSplitSig match {
701
703
case name : Name => readRest(name, Signature .NotAMethod )
0 commit comments