Qualifier no longer defers "(nested) class vs package" resolution.
Consider FQN 'a.b.c'.
If 'a' is a classifier in the current scope,
resolve rest in the corresponding class scope.
Otherwise (if 'a' is a package),
find the maximum possible prefix 'a.b' resolving to a package,
resolve rest in the corresponding package scope.
This commit is contained in:
@@ -0,0 +1,37 @@
|
||||
// -- Module: <m1> --
|
||||
package
|
||||
|
||||
package a {
|
||||
|
||||
public final class b {
|
||||
public constructor b()
|
||||
public final fun a_b(): kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// -- Module: <m2> --
|
||||
package
|
||||
|
||||
package a {
|
||||
|
||||
public final class b {
|
||||
// -- Module: <m1> --
|
||||
}
|
||||
}
|
||||
|
||||
package test {
|
||||
public val x: [ERROR : Type for a.b()]
|
||||
|
||||
public final class a {
|
||||
public constructor a()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user