ΛВ
Size: a a a
ΛВ
P
D
AS
v
K-
EK
v
K-
НМ
def unused: Any = implicitly[Impl.type]) ?S
НМ
S
S
E
НМ
E
AS
Companion[String] символ обжекта Impl еще не проинициализирован, и как следствие компилятор не знает его тип. Если, например, вместо него написать implicit val без явной аннотации типа, то тоже не заведется, а если с аннотацией, то все норм. Тот unused def имел в своем теле ссылку на обжект и форсил его инициализацию в нужный момент.AS
`sym` be considered for applicability testing?- the symbol's type is initialized- the symbol comes from a classfile- the symbol comes from a different sourcefile than the current one- the symbol and the accessed symbol's definitions come before, and do not contain the closest enclosing definition, // see #3373- the symbol's definition is a val, var, or def with an explicit result type