JVM facade: for Java resolve, always use JvmPlatform resolver
So #KT-20281 Fixed
This commit is contained in:
@@ -70,7 +70,7 @@ object JvmAnalyzerFacade : AnalyzerFacade() {
|
|||||||
@Suppress("UNCHECKED_CAST")
|
@Suppress("UNCHECKED_CAST")
|
||||||
val resolverForReferencedModule = referencedClassModule?.let { resolverForProject.tryGetResolverForModule(it as M) }
|
val resolverForReferencedModule = referencedClassModule?.let { resolverForProject.tryGetResolverForModule(it as M) }
|
||||||
|
|
||||||
val resolverForModule = resolverForReferencedModule ?: run {
|
val resolverForModule = resolverForReferencedModule?.takeIf { referencedClassModule.platform == JvmPlatform } ?: run {
|
||||||
// in case referenced class lies outside of our resolver, resolve the class as if it is inside our module
|
// in case referenced class lies outside of our resolver, resolve the class as if it is inside our module
|
||||||
// this leads to java class being resolved several times
|
// this leads to java class being resolved several times
|
||||||
resolverForProject.resolverForModule(moduleInfo)
|
resolverForProject.resolverForModule(moduleInfo)
|
||||||
|
|||||||
+7
@@ -0,0 +1,7 @@
|
|||||||
|
// !CHECK_HIGHLIGHTING
|
||||||
|
|
||||||
|
data class User(val name: String, val password: String)
|
||||||
|
|
||||||
|
expect open class Expected {
|
||||||
|
val user: User
|
||||||
|
}
|
||||||
+3
@@ -0,0 +1,3 @@
|
|||||||
|
public class ExpectedImpl {
|
||||||
|
public final User user = new User("User", "12345");
|
||||||
|
}
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
actual typealias <lineMarker>Expected</lineMarker> = ExpectedImpl
|
||||||
@@ -58,6 +58,10 @@ class MultiModuleLineMarkerTest : AbstractMultiModuleHighlightingTest() {
|
|||||||
doMultiPlatformTest(TargetPlatformKind.Jvm[JvmTarget.JVM_1_6])
|
doMultiPlatformTest(TargetPlatformKind.Jvm[JvmTarget.JVM_1_6])
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun testFromClassToJavaAliasInTest() {
|
||||||
|
doMultiPlatformTest(TargetPlatformKind.Jvm[JvmTarget.JVM_1_6])
|
||||||
|
}
|
||||||
|
|
||||||
fun testFromCommonToJvmHeader() {
|
fun testFromCommonToJvmHeader() {
|
||||||
doMultiPlatformTest(TargetPlatformKind.Jvm[JvmTarget.JVM_1_6])
|
doMultiPlatformTest(TargetPlatformKind.Jvm[JvmTarget.JVM_1_6])
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user