Fix name clash in JS implementation of multiplatform extension property
See KT-18756
This commit is contained in:
@@ -0,0 +1,2 @@
|
||||
header class ClassWithImplByExtension
|
||||
header val ClassWithImplByExtension.extensionVal: Int
|
||||
@@ -0,0 +1,3 @@
|
||||
impl class ClassWithImplByExtension
|
||||
impl val ClassWithImplByExtension.extensionVal: Int
|
||||
get() = 0
|
||||
@@ -0,0 +1,7 @@
|
||||
-- Common --
|
||||
Exit code: OK
|
||||
Output:
|
||||
|
||||
-- JS --
|
||||
Exit code: OK
|
||||
Output:
|
||||
+6
@@ -96,6 +96,12 @@ public class MultiPlatformIntegrationTestGenerated extends AbstractMultiPlatform
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("jsNameClash")
|
||||
public void testJsNameClash() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/multiplatform/jsNameClash/");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("missingOverload")
|
||||
public void testMissingOverload() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/multiplatform/missingOverload/");
|
||||
|
||||
+2
-2
@@ -110,10 +110,10 @@ class JsNameClashChecker : SimpleDeclarationChecker {
|
||||
}
|
||||
|
||||
private val DeclarationDescriptor.isActual: Boolean
|
||||
get() = this is MemberDescriptor && this.isActual
|
||||
get() = this is MemberDescriptor && this.isActual || this is PropertyAccessorDescriptor && this.correspondingProperty.isActual
|
||||
|
||||
private val DeclarationDescriptor.isExpect: Boolean
|
||||
get() = this is MemberDescriptor && this.isExpect
|
||||
get() = this is MemberDescriptor && this.isExpect || this is PropertyAccessorDescriptor && this.correspondingProperty.isExpect
|
||||
|
||||
private fun isFakeOverridingNative(descriptor: CallableMemberDescriptor): Boolean {
|
||||
return descriptor.kind == CallableMemberDescriptor.Kind.FAKE_OVERRIDE &&
|
||||
|
||||
Reference in New Issue
Block a user