Report JVM signature clashes from JVM_IR

Also:

* Do not rename public ABI fields
This includes backing fields for const, lateinit, @JvmField properties,
and instance fields for objects.

* FAKE_OVERRIDE declarations for static members of parent Java classes
Required to report cases when a Kotlin function accidentally overrides
Java class member.
This commit is contained in:
Dmitry Petrov
2020-02-10 11:27:48 +03:00
parent c1db9b6d40
commit 866f188120
233 changed files with 4487 additions and 44 deletions
@@ -49,6 +49,9 @@ abstract class AbstractDiagnosticsTestWithJvmBackend : AbstractDiagnosticsTest()
return analysisResult
}
// DO NOT use FE-based diagnostics for JVM signature conflict
override fun shouldSkipJvmSignatureDiagnostics(groupedByModule: Map<TestModule?, List<TestFile>>): Boolean = true
protected abstract fun GenerationState.Builder.setupGenerationState(): GenerationState.Builder
}
@@ -11,6 +11,7 @@ enum class TargetBackend(
) {
ANY(false),
JVM(false),
JVM_OLD(false, JVM),
JVM_IR(true, JVM),
JS(false),
JS_IR(true, JS),