diff --git a/.idea/dictionaries/hungnv.xml b/.idea/dictionaries/hungnv.xml index a965abf7d17..eae20ed79ec 100644 --- a/.idea/dictionaries/hungnv.xml +++ b/.idea/dictionaries/hungnv.xml @@ -1,6 +1,7 @@ + multifile shrinker snapshotter snapshotter's diff --git a/build-common/src/org/jetbrains/kotlin/incremental/IncrementalJvmCache.kt b/build-common/src/org/jetbrains/kotlin/incremental/IncrementalJvmCache.kt index 2e2a3ddfd14..69c7b915c21 100644 --- a/build-common/src/org/jetbrains/kotlin/incremental/IncrementalJvmCache.kt +++ b/build-common/src/org/jetbrains/kotlin/incremental/IncrementalJvmCache.kt @@ -652,8 +652,10 @@ private fun getConstantsMap(bytes: ByteArray): LinkedHashMap { ClassReader(bytes).accept(object : ClassVisitor(Opcodes.API_VERSION) { override fun visitField(access: Int, name: String, desc: String, signature: String?, value: Any?): FieldVisitor? { - val staticFinal = Opcodes.ACC_STATIC or Opcodes.ACC_FINAL or Opcodes.ACC_PRIVATE - if (value != null && access and staticFinal == Opcodes.ACC_STATIC or Opcodes.ACC_FINAL) { + if (access and Opcodes.ACC_PRIVATE == Opcodes.ACC_PRIVATE) return null + + val staticFinal = Opcodes.ACC_STATIC or Opcodes.ACC_FINAL + if (value != null && access and staticFinal == staticFinal) { result[name] = value } return null @@ -689,7 +691,9 @@ private fun getInlineFunctionsMap(header: KotlinClassHeader, bytes: ByteArray): desc: String, signature: String?, exceptions: Array? - ): MethodVisitor { + ): MethodVisitor? { + if (access and Opcodes.ACC_PRIVATE == Opcodes.ACC_PRIVATE) return null + val dummyClassWriter = ClassWriter(0) dummyClassWriter.visit(dummyVersion, 0, "dummy", null, AsmTypes.OBJECT_TYPE.internalName, null) diff --git a/build-common/src/org/jetbrains/kotlin/incremental/storage/externalizers.kt b/build-common/src/org/jetbrains/kotlin/incremental/storage/externalizers.kt index e72b38c96cf..b2130bfed04 100644 --- a/build-common/src/org/jetbrains/kotlin/incremental/storage/externalizers.kt +++ b/build-common/src/org/jetbrains/kotlin/incremental/storage/externalizers.kt @@ -204,6 +204,9 @@ object ConstantExternalizer : DataExternalizer { } } + // The constants' values are provided by ASM, so their types can only be the following. + // See https://asm.ow2.io/javadoc/org/objectweb/asm/ClassVisitor.html#visitField(int,java.lang.String,java.lang.String,java.lang.String,java.lang.Object) + // (Note: Boolean constants have Integer (0, 1) values in ASM.) private enum class Kind { INT, FLOAT, LONG, DOUBLE, STRING } diff --git a/compiler/incremental-compilation-impl/src/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotShrinker.kt b/compiler/incremental-compilation-impl/src/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotShrinker.kt index c517861de11..ca09c6cdd74 100644 --- a/compiler/incremental-compilation-impl/src/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotShrinker.kt +++ b/compiler/incremental-compilation-impl/src/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotShrinker.kt @@ -143,7 +143,7 @@ internal fun ClasspathSnapshot.removeDuplicateAndInaccessibleClasses(): List { +private fun ClasspathSnapshot.getNonDuplicateClassSnapshots(): List { val classSnapshots = LinkedHashMap(classpathEntrySnapshots.sumOf { it.classSnapshots.size }) for (classpathEntrySnapshot in classpathEntrySnapshots) { for ((unixStyleRelativePath, classSnapshot) in classpathEntrySnapshot.classSnapshots) { diff --git a/compiler/incremental-compilation-impl/test/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest.kt b/compiler/incremental-compilation-impl/test/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest.kt index fddde8719ef..58459ebc57c 100644 --- a/compiler/incremental-compilation-impl/test/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest.kt +++ b/compiler/incremental-compilation-impl/test/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest.kt @@ -8,9 +8,8 @@ package org.jetbrains.kotlin.incremental.classpathDiff import org.jetbrains.kotlin.build.report.metrics.DoNothingBuildMetricsReporter import org.jetbrains.kotlin.incremental.ChangesEither import org.jetbrains.kotlin.incremental.LookupSymbol -import org.jetbrains.kotlin.incremental.classpathDiff.ClasspathSnapshotTestCommon.Util.compileAll -import org.jetbrains.kotlin.incremental.classpathDiff.ClasspathSnapshotTestCommon.Util.snapshot -import org.jetbrains.kotlin.incremental.classpathDiff.ClasspathSnapshotTestCommon.Util.snapshotAll +import org.jetbrains.kotlin.incremental.classpathDiff.ClasspathSnapshotTestCommon.ClassFileUtil.snapshot +import org.jetbrains.kotlin.incremental.classpathDiff.ClasspathSnapshotTestCommon.CompileUtil.compileAll import org.jetbrains.kotlin.resolve.sam.SAM_LOOKUP_NAME import org.junit.Test import org.junit.rules.TemporaryFolder @@ -21,20 +20,16 @@ import kotlin.test.fail abstract class ClasspathChangesComputerTest : ClasspathSnapshotTestCommon() { - // TODO Add more test cases: - // - private/non-private fields - // - inline functions - // - changing supertype by adding somethings that changes/does not change the supertype ABI - // - adding an annotation + companion object { + val testDataDir = + File("compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest") + } @Test - abstract fun testAbiChange_changePublicMethodSignature() + abstract fun testAbiVersusNonAbiChanges() @Test - abstract fun testNonAbiChange_changeMethodImplementation() - - @Test - abstract fun testVariousAbiChanges() + abstract fun testModifiedAddedRemovedElements() @Test abstract fun testImpactAnalysis() @@ -43,38 +38,21 @@ abstract class ClasspathChangesComputerTest : ClasspathSnapshotTestCommon() { class KotlinOnlyClasspathChangesComputerTest : ClasspathChangesComputerTest() { @Test - override fun testAbiChange_changePublicMethodSignature() { - val sourceFile = SimpleKotlinClass(tmpDir) - val previousSnapshot = sourceFile.compileAndSnapshot() - val currentSnapshot = sourceFile.changePublicMethodSignature().compileAndSnapshot() - val changes = computeClassChanges(currentSnapshot, previousSnapshot) - + override fun testAbiVersusNonAbiChanges() { + val changes = computeClasspathChanges(File(testDataDir, "testAbiVersusNonAbiChanges/src/kotlin"), tmpDir) Changes( lookupSymbols = setOf( - LookupSymbol(name = "publicFunction", scope = "com.example.SimpleKotlinClass"), - LookupSymbol(name = SAM_LOOKUP_NAME.asString(), scope = "com.example.SimpleKotlinClass") + LookupSymbol(name = "publicPropertyChangedType", scope = "com.example.SomeClass"), + LookupSymbol(name = "publicFunctionChangedSignature", scope = "com.example.SomeClass"), + LookupSymbol(name = SAM_LOOKUP_NAME.asString(), scope = "com.example.SomeClass"), ), - fqNames = setOf("com.example.SimpleKotlinClass") + fqNames = setOf("com.example.SomeClass") ).assertEquals(changes) } @Test - override fun testNonAbiChange_changeMethodImplementation() { - val sourceFile = SimpleKotlinClass(tmpDir) - val previousSnapshot = sourceFile.compileAndSnapshot() - val currentSnapshot = sourceFile.changeMethodImplementation().compileAndSnapshot() - val changes = computeClassChanges(currentSnapshot, previousSnapshot) - - Changes(emptySet(), emptySet()).assertEquals(changes) - } - - @Test - override fun testVariousAbiChanges() { - val classpathSourceDir = File(testDataDir, "../ClasspathChangesComputerTest/testVariousAbiChanges/src/kotlin").canonicalFile - val currentSnapshot = snapshotClasspath(File(classpathSourceDir, "current-classpath"), tmpDir) - val previousSnapshot = snapshotClasspath(File(classpathSourceDir, "previous-classpath"), tmpDir) - val changes = computeClasspathChanges(currentSnapshot, previousSnapshot) - + override fun testModifiedAddedRemovedElements() { + val changes = computeClasspathChanges(File(testDataDir, "testModifiedAddedRemovedElements/src/kotlin"), tmpDir) Changes( lookupSymbols = setOf( // ModifiedClassUnchangedMembers @@ -94,8 +72,44 @@ class KotlinOnlyClasspathChangesComputerTest : ClasspathChangesComputerTest() { // RemovedClass LookupSymbol(name = "RemovedClass", scope = "com.example"), + ), + fqNames = setOf( + "com.example.ModifiedClassUnchangedMembers", + "com.example.ModifiedClassChangedMembers", + "com.example.AddedClass", + "com.example.RemovedClass", + ) + ).assertEquals(changes) + } - // Top-level properties and functions + @Test + override fun testImpactAnalysis() { + val changes = computeClasspathChanges(File(testDataDir, "testImpactAnalysis_KotlinOnly/src"), tmpDir) + Changes( + lookupSymbols = setOf( + LookupSymbol(name = "changedProperty", scope = "com.example.ChangedSuperClass"), + LookupSymbol(name = "changedProperty", scope = "com.example.SubClassOfChangedSuperClass"), + LookupSymbol(name = "changedProperty", scope = "com.example.SubSubClassOfChangedSuperClass"), + LookupSymbol(name = "changedFunction", scope = "com.example.ChangedSuperClass"), + LookupSymbol(name = "changedFunction", scope = "com.example.SubClassOfChangedSuperClass"), + LookupSymbol(name = "changedFunction", scope = "com.example.SubSubClassOfChangedSuperClass"), + LookupSymbol(name = SAM_LOOKUP_NAME.asString(), scope = "com.example.ChangedSuperClass"), + LookupSymbol(name = SAM_LOOKUP_NAME.asString(), scope = "com.example.SubClassOfChangedSuperClass"), + LookupSymbol(name = SAM_LOOKUP_NAME.asString(), scope = "com.example.SubSubClassOfChangedSuperClass") + ), + fqNames = setOf( + "com.example.ChangedSuperClass", + "com.example.SubClassOfChangedSuperClass", + "com.example.SubSubClassOfChangedSuperClass" + ) + ).assertEquals(changes) + } + + @Test + fun testTopLevelMembers() { + val changes = computeClasspathChanges(File(testDataDir, "testTopLevelMembers_KotlinOnly/src"), tmpDir) + Changes( + lookupSymbols = setOf( LookupSymbol(name = "modifiedTopLevelProperty", scope = "com.example"), LookupSymbol(name = "addedTopLevelProperty", scope = "com.example"), LookupSymbol(name = "removedTopLevelProperty", scope = "com.example"), @@ -106,40 +120,78 @@ class KotlinOnlyClasspathChangesComputerTest : ClasspathChangesComputerTest() { LookupSymbol(name = "movedTopLevelFunction", scope = "com.example"), LookupSymbol(name = SAM_LOOKUP_NAME.asString(), scope = "com.example") ), + fqNames = setOf("com.example") + ).assertEquals(changes) + } + + @Test + fun testDifferentClassKinds() { + val changes = computeClasspathChanges(File(testDataDir, "testDifferentClassKinds_KotlinOnly/src"), tmpDir) + Changes( + lookupSymbols = setOf( + // NormalClass + LookupSymbol(name = "propertyInNormalClass", scope = "com.example.NormalClass"), + LookupSymbol(name = "functionInNormalClass", scope = "com.example.NormalClass"), + + // NormalClass.CompanionObject + LookupSymbol(name = "propertyInCompanionObject", scope = "com.example.NormalClass.CompanionObject"), + LookupSymbol(name = "functionInCompanionObject", scope = "com.example.NormalClass.CompanionObject"), + + // NormalClass.NestedClass + LookupSymbol(name = "propertyInNestedClass", scope = "com.example.NormalClass.NestedClass"), + LookupSymbol(name = "functionInNestedClass", scope = "com.example.NormalClass.NestedClass"), + + // FileFacade + LookupSymbol(name = "propertyInFileFacade", scope = "com.example"), + LookupSymbol(name = "functionInFileFacade", scope = "com.example"), + + // MultifileClass + LookupSymbol(name = "propertyInMultifileClass1", scope = "com.example"), + LookupSymbol(name = "functionInMultifileClass1", scope = "com.example"), + LookupSymbol(name = "propertyInMultifileClass2", scope = "com.example"), + LookupSymbol(name = "functionInMultifileClass2", scope = "com.example"), + + LookupSymbol(name = SAM_LOOKUP_NAME.asString(), scope = "com.example.NormalClass"), + LookupSymbol(name = SAM_LOOKUP_NAME.asString(), scope = "com.example.NormalClass.CompanionObject"), + LookupSymbol(name = SAM_LOOKUP_NAME.asString(), scope = "com.example.NormalClass.NestedClass"), + LookupSymbol(name = SAM_LOOKUP_NAME.asString(), scope = "com.example"), + ), fqNames = setOf( - "com.example.ModifiedClassUnchangedMembers", - "com.example.ModifiedClassChangedMembers", - "com.example.AddedClass", - "com.example.RemovedClass", + "com.example.NormalClass", + "com.example.NormalClass.CompanionObject", + "com.example.NormalClass.NestedClass", "com.example" ) ).assertEquals(changes) } @Test - override fun testImpactAnalysis() { - val classpathSourceDir = - File(testDataDir, "../ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/kotlin").canonicalFile - val currentSnapshot = snapshotClasspath(File(classpathSourceDir, "current-classpath"), tmpDir) - val previousSnapshot = snapshotClasspath(File(classpathSourceDir, "previous-classpath"), tmpDir) - val changes = computeClasspathChanges(currentSnapshot, previousSnapshot) - + fun testConstantsAndInlineFunctions() { + val changes = computeClasspathChanges(File(testDataDir, "testConstantsAndInlineFunctions_KotlinOnly/src"), tmpDir) Changes( lookupSymbols = setOf( - LookupSymbol(name = "changedProperty", scope = "com.example.ChangedSuperClass"), - LookupSymbol(name = "changedProperty", scope = "com.example.SubClass"), - LookupSymbol(name = "changedProperty", scope = "com.example.SubSubClass"), - LookupSymbol(name = "changedFunction", scope = "com.example.ChangedSuperClass"), - LookupSymbol(name = "changedFunction", scope = "com.example.SubClass"), - LookupSymbol(name = "changedFunction", scope = "com.example.SubSubClass"), - LookupSymbol(name = SAM_LOOKUP_NAME.asString(), scope = "com.example.ChangedSuperClass"), - LookupSymbol(name = SAM_LOOKUP_NAME.asString(), scope = "com.example.SubClass"), - LookupSymbol(name = SAM_LOOKUP_NAME.asString(), scope = "com.example.SubSubClass") + LookupSymbol(name = "constantChangedType", scope = "com.example.SomeClass.CompanionObject"), + // TODO (Fix in next commit). Missing: + // LookupSymbol(name = "constantChangedValue", scope = "com.example.SomeClass.CompanionObject") + + LookupSymbol(name = "inlineFunctionChangedSignature", scope = "com.example.SomeClass"), + LookupSymbol(name = "inlineFunctionChangedImplementation", scope = "com.example.SomeClass"), + + LookupSymbol(name = SAM_LOOKUP_NAME.asString(), scope = "com.example.SomeClass"), + LookupSymbol(name = SAM_LOOKUP_NAME.asString(), scope = "com.example.SomeClass.CompanionObject"), + + // TODO (Fix in next commit). Incorrect: + LookupSymbol(name = "constantChangedType", scope = "com.example.SomeClass"), + LookupSymbol(name = "constantChangedType", scope = "com.example.SomeClass.Companion"), + LookupSymbol(name = "constantChangedValue", scope = "com.example.SomeClass"), + LookupSymbol(name = "constantChangedValue", scope = "com.example.SomeClass.Companion"), + LookupSymbol(name = SAM_LOOKUP_NAME.asString(), scope = "com.example.SomeClass.Companion"), ), fqNames = setOf( - "com.example.ChangedSuperClass", - "com.example.SubClass", - "com.example.SubSubClass" + "com.example.SomeClass", + "com.example.SomeClass.CompanionObject", + // TODO (Fix in next commit). Incorrect: + "com.example.SomeClass.Companion" ) ).assertEquals(changes) } @@ -155,38 +207,21 @@ class JavaOnlyClasspathChangesComputerTest(private val protoBased: Boolean) : Cl } @Test - override fun testAbiChange_changePublicMethodSignature() { - val sourceFile = SimpleJavaClass(tmpDir) - val previousSnapshot = sourceFile.compile().snapshot(protoBased) - val currentSnapshot = sourceFile.changePublicMethodSignature().compile().snapshot(protoBased) - val changes = computeClassChanges(currentSnapshot, previousSnapshot) - + override fun testAbiVersusNonAbiChanges() { + val changes = computeClasspathChanges(File(testDataDir, "testAbiVersusNonAbiChanges/src/java"), tmpDir, protoBased) Changes( lookupSymbols = setOf( - LookupSymbol(name = "publicMethod", scope = "com.example.SimpleJavaClass"), - LookupSymbol(name = SAM_LOOKUP_NAME.asString(), scope = "com.example.SimpleJavaClass") + LookupSymbol(name = "publicFieldChangedType", scope = "com.example.SomeClass"), + LookupSymbol(name = "publicMethodChangedSignature", scope = "com.example.SomeClass"), + LookupSymbol(name = SAM_LOOKUP_NAME.asString(), scope = "com.example.SomeClass") ), - fqNames = setOf("com.example.SimpleJavaClass") + fqNames = setOf("com.example.SomeClass") ).assertEquals(changes) } @Test - override fun testNonAbiChange_changeMethodImplementation() { - val sourceFile = SimpleJavaClass(tmpDir) - val previousSnapshot = sourceFile.compile().snapshot(protoBased) - val currentSnapshot = sourceFile.changeMethodImplementation().compile().snapshot(protoBased) - val changes = computeClassChanges(currentSnapshot, previousSnapshot) - - Changes(emptySet(), emptySet()).assertEquals(changes) - } - - @Test - override fun testVariousAbiChanges() { - val classpathSourceDir = File(testDataDir, "../ClasspathChangesComputerTest/testVariousAbiChanges/src/java").canonicalFile - val currentSnapshot = snapshotClasspath(File(classpathSourceDir, "current-classpath"), tmpDir, protoBased) - val previousSnapshot = snapshotClasspath(File(classpathSourceDir, "previous-classpath"), tmpDir, protoBased) - val changes = computeClasspathChanges(currentSnapshot, previousSnapshot) - + override fun testModifiedAddedRemovedElements() { + val changes = computeClasspathChanges(File(testDataDir, "testModifiedAddedRemovedElements/src/java"), tmpDir, protoBased) Changes( lookupSymbols = setOf( // ModifiedClassUnchangedMembers @@ -218,27 +253,23 @@ class JavaOnlyClasspathChangesComputerTest(private val protoBased: Boolean) : Cl @Test override fun testImpactAnalysis() { - val classpathSourceDir = File(testDataDir, "../ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/java").canonicalFile - val currentSnapshot = snapshotClasspath(File(classpathSourceDir, "current-classpath"), tmpDir, protoBased) - val previousSnapshot = snapshotClasspath(File(classpathSourceDir, "previous-classpath"), tmpDir, protoBased) - val changes = computeClasspathChanges(currentSnapshot, previousSnapshot) - + val changes = computeClasspathChanges(File(testDataDir, "testImpactAnalysis_JavaOnly/src"), tmpDir, protoBased) Changes( lookupSymbols = setOf( LookupSymbol(name = "changedField", scope = "com.example.ChangedSuperClass"), - LookupSymbol(name = "changedField", scope = "com.example.SubClass"), - LookupSymbol(name = "changedField", scope = "com.example.SubSubClass"), + LookupSymbol(name = "changedField", scope = "com.example.SubClassOfChangedSuperClass"), + LookupSymbol(name = "changedField", scope = "com.example.SubSubClassOfChangedSuperClass"), LookupSymbol(name = "changedMethod", scope = "com.example.ChangedSuperClass"), - LookupSymbol(name = "changedMethod", scope = "com.example.SubClass"), - LookupSymbol(name = "changedMethod", scope = "com.example.SubSubClass"), + LookupSymbol(name = "changedMethod", scope = "com.example.SubClassOfChangedSuperClass"), + LookupSymbol(name = "changedMethod", scope = "com.example.SubSubClassOfChangedSuperClass"), LookupSymbol(name = SAM_LOOKUP_NAME.asString(), scope = "com.example.ChangedSuperClass"), - LookupSymbol(name = SAM_LOOKUP_NAME.asString(), scope = "com.example.SubClass"), - LookupSymbol(name = SAM_LOOKUP_NAME.asString(), scope = "com.example.SubSubClass") + LookupSymbol(name = SAM_LOOKUP_NAME.asString(), scope = "com.example.SubClassOfChangedSuperClass"), + LookupSymbol(name = SAM_LOOKUP_NAME.asString(), scope = "com.example.SubSubClassOfChangedSuperClass") ), fqNames = setOf( "com.example.ChangedSuperClass", - "com.example.SubClass", - "com.example.SubSubClass" + "com.example.SubClassOfChangedSuperClass", + "com.example.SubSubClassOfChangedSuperClass" ) ).assertEquals(changes) } @@ -248,52 +279,55 @@ class KotlinAndJavaClasspathChangesComputerTest : ClasspathSnapshotTestCommon() @Test fun testImpactAnalysis() { - val classpathSourceDir = File(testDataDir, "../ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src").canonicalFile - val currentSnapshot = snapshotClasspath(File(classpathSourceDir, "current-classpath"), tmpDir) - val previousSnapshot = snapshotClasspath(File(classpathSourceDir, "previous-classpath"), tmpDir) - val changes = computeClasspathChanges(currentSnapshot, previousSnapshot) - + val changes = + computeClasspathChanges(File(ClasspathChangesComputerTest.testDataDir, "testImpactAnalysis_KotlinAndJava/src"), tmpDir) Changes( lookupSymbols = setOf( LookupSymbol(name = "changedProperty", scope = "com.example.ChangedKotlinSuperClass"), - LookupSymbol(name = "changedProperty", scope = "com.example.KotlinSubClassOfKotlinSuperClass"), - LookupSymbol(name = "changedProperty", scope = "com.example.JavaSubClassOfKotlinSuperClass"), + LookupSymbol(name = "changedProperty", scope = "com.example.KotlinSubClassOfChangedKotlinSuperClass"), + LookupSymbol(name = "changedProperty", scope = "com.example.JavaSubClassOfChangedKotlinSuperClass"), LookupSymbol(name = "changedFunction", scope = "com.example.ChangedKotlinSuperClass"), - LookupSymbol(name = "changedFunction", scope = "com.example.KotlinSubClassOfKotlinSuperClass"), - LookupSymbol(name = "changedFunction", scope = "com.example.JavaSubClassOfKotlinSuperClass"), + LookupSymbol(name = "changedFunction", scope = "com.example.KotlinSubClassOfChangedKotlinSuperClass"), + LookupSymbol(name = "changedFunction", scope = "com.example.JavaSubClassOfChangedKotlinSuperClass"), LookupSymbol(name = SAM_LOOKUP_NAME.asString(), scope = "com.example.ChangedKotlinSuperClass"), - LookupSymbol(name = SAM_LOOKUP_NAME.asString(), scope = "com.example.KotlinSubClassOfKotlinSuperClass"), - LookupSymbol(name = SAM_LOOKUP_NAME.asString(), scope = "com.example.JavaSubClassOfKotlinSuperClass"), + LookupSymbol(name = SAM_LOOKUP_NAME.asString(), scope = "com.example.KotlinSubClassOfChangedKotlinSuperClass"), + LookupSymbol(name = SAM_LOOKUP_NAME.asString(), scope = "com.example.JavaSubClassOfChangedKotlinSuperClass"), LookupSymbol(name = "changedField", scope = "com.example.ChangedJavaSuperClass"), - LookupSymbol(name = "changedField", scope = "com.example.KotlinSubClassOfJavaSuperClass"), - LookupSymbol(name = "changedField", scope = "com.example.JavaSubClassOfJavaSuperClass"), + LookupSymbol(name = "changedField", scope = "com.example.KotlinSubClassOfChangedJavaSuperClass"), + LookupSymbol(name = "changedField", scope = "com.example.JavaSubClassOfChangedJavaSuperClass"), LookupSymbol(name = "changedMethod", scope = "com.example.ChangedJavaSuperClass"), - LookupSymbol(name = "changedMethod", scope = "com.example.KotlinSubClassOfJavaSuperClass"), - LookupSymbol(name = "changedMethod", scope = "com.example.JavaSubClassOfJavaSuperClass"), + LookupSymbol(name = "changedMethod", scope = "com.example.KotlinSubClassOfChangedJavaSuperClass"), + LookupSymbol(name = "changedMethod", scope = "com.example.JavaSubClassOfChangedJavaSuperClass"), LookupSymbol(name = SAM_LOOKUP_NAME.asString(), scope = "com.example.ChangedJavaSuperClass"), - LookupSymbol(name = SAM_LOOKUP_NAME.asString(), scope = "com.example.KotlinSubClassOfJavaSuperClass"), - LookupSymbol(name = SAM_LOOKUP_NAME.asString(), scope = "com.example.JavaSubClassOfJavaSuperClass") + LookupSymbol(name = SAM_LOOKUP_NAME.asString(), scope = "com.example.KotlinSubClassOfChangedJavaSuperClass"), + LookupSymbol(name = SAM_LOOKUP_NAME.asString(), scope = "com.example.JavaSubClassOfChangedJavaSuperClass") ), fqNames = setOf( "com.example.ChangedKotlinSuperClass", - "com.example.KotlinSubClassOfKotlinSuperClass", - "com.example.JavaSubClassOfKotlinSuperClass", + "com.example.KotlinSubClassOfChangedKotlinSuperClass", + "com.example.JavaSubClassOfChangedKotlinSuperClass", "com.example.ChangedJavaSuperClass", - "com.example.KotlinSubClassOfJavaSuperClass", - "com.example.JavaSubClassOfJavaSuperClass" + "com.example.KotlinSubClassOfChangedJavaSuperClass", + "com.example.JavaSubClassOfChangedJavaSuperClass" ) ).assertEquals(changes) } } -private fun snapshotClasspath(classpathSourceDir: File, tmpDir: TemporaryFolder, protoBased: Boolean = true): ClasspathSnapshot { +private fun computeClasspathChanges(classpathSourceDir: File, tmpDir: TemporaryFolder, protoBased: Boolean = false): Changes { + val currentSnapshot = snapshotClasspath(File(classpathSourceDir, "current-classpath"), tmpDir, protoBased) + val previousSnapshot = snapshotClasspath(File(classpathSourceDir, "previous-classpath"), tmpDir, protoBased) + return computeClasspathChanges(currentSnapshot, previousSnapshot) +} + +private fun snapshotClasspath(classpathSourceDir: File, tmpDir: TemporaryFolder, protoBased: Boolean): ClasspathSnapshot { val classpath = mutableListOf() val classpathEntrySnapshots = classpathSourceDir.listFiles()!!.sortedBy { it.name }.map { classpathEntrySourceDir -> val classFiles = compileAll(classpathEntrySourceDir, classpath, tmpDir) classpath.addAll(listOfNotNull(classFiles.firstOrNull()?.classRoot)) val relativePaths = classFiles.map { it.unixStyleRelativePath } - val classSnapshots = classFiles.snapshotAll(protoBased).map { it.withHash } + val classSnapshots = classFiles.snapshot(protoBased).map { it.withHash } ClasspathEntrySnapshot( classSnapshots = relativePaths.zip(classSnapshots).toMap(LinkedHashMap()) ) @@ -306,16 +340,8 @@ private fun computeClasspathChanges( previousClasspathSnapshot: ClasspathSnapshot ): Changes { return ClasspathChangesComputer.computeChangedAndImpactedSet( - currentClasspathSnapshot.getNonDuplicateClassSnapshots(), - previousClasspathSnapshot.getNonDuplicateClassSnapshots(), - DoNothingBuildMetricsReporter - ).normalize() -} - -private fun computeClassChanges(currentClassSnapshot: ClassSnapshot, previousClassSnapshot: ClassSnapshot): Changes { - return ClasspathChangesComputer.computeClassChanges( - listOf(currentClassSnapshot), - listOf(previousClassSnapshot), + currentClasspathSnapshot.removeDuplicateAndInaccessibleClasses(), + previousClasspathSnapshot.removeDuplicateAndInaccessibleClasses(), DoNothingBuildMetricsReporter ).normalize() } diff --git a/compiler/incremental-compilation-impl/test/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotSerializerTest.kt b/compiler/incremental-compilation-impl/test/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotSerializerTest.kt index 6bd6008635f..011f9523647 100644 --- a/compiler/incremental-compilation-impl/test/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotSerializerTest.kt +++ b/compiler/incremental-compilation-impl/test/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotSerializerTest.kt @@ -5,19 +5,26 @@ package org.jetbrains.kotlin.incremental.classpathDiff -import org.jetbrains.kotlin.incremental.classpathDiff.ClasspathSnapshotTestCommon.Util.readBytes +import org.jetbrains.kotlin.incremental.classpathDiff.ClasspathSnapshotTestCommon.SourceFile.JavaSourceFile +import org.jetbrains.kotlin.incremental.classpathDiff.ClasspathSnapshotTestCommon.SourceFile.KotlinSourceFile import org.jetbrains.kotlin.incremental.storage.fromByteArray import org.jetbrains.kotlin.incremental.storage.toByteArray import org.junit.Assert.assertEquals import org.junit.Test +import java.io.File abstract class ClasspathSnapshotSerializerTest : ClasspathSnapshotTestCommon() { - protected abstract val testSourceFile: ChangeableTestSourceFile + companion object { + val testDataDir = + File("compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest") + } + + protected abstract val sourceFile: TestSourceFile @Test - open fun `test ClassSnapshotDataSerializer`() { - val originalSnapshot = testSourceFile.compileAndSnapshot() + open fun `test ClassSnapshotExternalizer`() { + val originalSnapshot = sourceFile.compileAndSnapshot() val serializedSnapshot = ClassSnapshotExternalizer.toByteArray(originalSnapshot) val deserializedSnapshot = ClassSnapshotExternalizer.fromByteArray(serializedSnapshot) @@ -26,21 +33,20 @@ abstract class ClasspathSnapshotSerializerTest : ClasspathSnapshotTestCommon() { } class KotlinClassesClasspathSnapshotSerializerTest : ClasspathSnapshotSerializerTest() { - override val testSourceFile = SimpleKotlinClass(tmpDir) + + override val sourceFile = TestSourceFile( + KotlinSourceFile( + baseDir = File(testDataDir, "src/kotlin"), relativePath = "com/example/SimpleClass.kt", + preCompiledClassFile = ClassFile(File(testDataDir, "classes/kotlin"), "com/example/SimpleClass.class") + ), tmpDir + ) } class JavaClassesClasspathSnapshotSerializerTest : ClasspathSnapshotSerializerTest() { - override val testSourceFile = SimpleJavaClass(tmpDir) - - @Test - override fun `test ClassSnapshotDataSerializer`() { - val originalSnapshot = testSourceFile.compile().let { - ClassSnapshotter.snapshot(listOf(ClassFileWithContents(it, it.readBytes())), includeDebugInfoInSnapshot = false) - }.single() - val serializedSnapshot = ClassSnapshotExternalizer.toByteArray(originalSnapshot) - val deserializedSnapshot = ClassSnapshotExternalizer.fromByteArray(serializedSnapshot) - - assertEquals(originalSnapshot.toGson(), deserializedSnapshot.toGson()) - } + override val sourceFile = TestSourceFile( + JavaSourceFile( + baseDir = File(testDataDir, "src/java"), relativePath = "com/example/SimpleClass.java", + ), tmpDir + ) } diff --git a/compiler/incremental-compilation-impl/test/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotTestCommon.kt b/compiler/incremental-compilation-impl/test/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotTestCommon.kt index e74da080e82..7997dde853d 100644 --- a/compiler/incremental-compilation-impl/test/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotTestCommon.kt +++ b/compiler/incremental-compilation-impl/test/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotTestCommon.kt @@ -6,12 +6,10 @@ package org.jetbrains.kotlin.incremental.classpathDiff import com.google.gson.GsonBuilder -import org.jetbrains.kotlin.incremental.classpathDiff.ClasspathSnapshotTestCommon.SourceFile.JavaSourceFile +import org.jetbrains.kotlin.incremental.classpathDiff.ClasspathSnapshotTestCommon.ClassFileUtil.asFile +import org.jetbrains.kotlin.incremental.classpathDiff.ClasspathSnapshotTestCommon.ClassFileUtil.snapshot +import org.jetbrains.kotlin.incremental.classpathDiff.ClasspathSnapshotTestCommon.CompileUtil.compile import org.jetbrains.kotlin.incremental.classpathDiff.ClasspathSnapshotTestCommon.SourceFile.KotlinSourceFile -import org.jetbrains.kotlin.incremental.classpathDiff.ClasspathSnapshotTestCommon.Util.compile -import org.jetbrains.kotlin.incremental.classpathDiff.ClasspathSnapshotTestCommon.Util.compileAll -import org.jetbrains.kotlin.incremental.classpathDiff.ClasspathSnapshotTestCommon.Util.snapshot -import org.jetbrains.kotlin.incremental.classpathDiff.ClasspathSnapshotTestCommon.Util.snapshotAll import org.jetbrains.kotlin.test.KotlinTestUtils import org.junit.Rule import org.junit.rules.TemporaryFolder @@ -19,11 +17,6 @@ import java.io.File abstract class ClasspathSnapshotTestCommon { - companion object { - val testDataDir = - File("compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotTestCommon") - } - @get:Rule val tmpDir = TemporaryFolder() @@ -53,44 +46,31 @@ abstract class ClasspathSnapshotTestCommon { /** Same as [SourceFile] but with a [TemporaryFolder] to store the results of operations on the [SourceFile]. */ open class TestSourceFile(val sourceFile: SourceFile, private val tmpDir: TemporaryFolder) { - fun replace(oldValue: String, newValue: String, preCompiledKotlinClassFile: ClassFile? = null): TestSourceFile { - val fileContents = sourceFile.asFile().readText() - check(fileContents.contains(oldValue)) { "String '$oldValue' not found in file '${sourceFile.asFile().path}'" } - - val newSourceFile = when (sourceFile) { - is KotlinSourceFile -> KotlinSourceFile(tmpDir.newFolder(), sourceFile.unixStyleRelativePath, preCompiledKotlinClassFile!!) - is JavaSourceFile -> JavaSourceFile(tmpDir.newFolder(), sourceFile.unixStyleRelativePath) - } - newSourceFile.asFile().parentFile.mkdirs() - newSourceFile.asFile().writeText(fileContents.replace(oldValue, newValue)) - return TestSourceFile(newSourceFile, tmpDir) - } - - /** - * Compiles this source file and returns a single generated .class file, or fails if zero or more than one .class file was - * generated. - * - * Alternatively, the caller can call [compileAll] to get all generated .class files. - */ - fun compile(): ClassFile = compileAll().single() + fun asFile() = sourceFile.asFile() /** Compiles this source file and returns all generated .class files. */ @Suppress("MemberVisibilityCanBePrivate") - fun compileAll(): List = sourceFile.compile(tmpDir) + fun compile(): List = sourceFile.compile(tmpDir) - /** - * Compiles this source file and returns the snapshot of a single generated .class file, or fails if zero or more than one .class - * file was generated. - * - * Alternatively, the caller can call [compileAndSnapshotAll] to get the snapshots of all generated .class files. - */ - fun compileAndSnapshot() = compile().snapshot() + fun compileSingle(): ClassFile = compile().single() - /** Compiles this source file and returns the snapshots of all generated .class files. */ - fun compileAndSnapshotAll(): List = compileAll().snapshotAll() + fun compileAndSnapshot() = compileSingle().snapshot() } - object Util { + object CompileUtil { + + fun SourceFile.compile(tmpDir: TemporaryFolder): List { + return if (this is KotlinSourceFile) { + preCompiledClassFiles.forEach { + preCompileKotlinFilesIfNecessary(baseDir, it.classRoot, classpath = emptyList(), tmpDir) + } + preCompiledClassFiles + } else { + val srcDir = tmpDir.newFolder() + asFile().copyTo(File(srcDir, unixStyleRelativePath)) + compileAll(srcDir, classpath = emptyList(), tmpDir) + } + } /** Compiles the source files in the given directory and returns all generated .class files. */ fun compileAll(srcDir: File, classpath: List, tmpDir: TemporaryFolder): List { @@ -140,19 +120,6 @@ abstract class ClasspathSnapshotTestCommon { } } - fun SourceFile.compile(tmpDir: TemporaryFolder): List { - return if (this is KotlinSourceFile) { - preCompiledClassFiles.forEach { - preCompileKotlinFilesIfNecessary(baseDir, it.classRoot, classpath = emptyList(), tmpDir) - } - preCompiledClassFiles - } else { - val srcDir = tmpDir.newFolder() - asFile().copyTo(File(srcDir, unixStyleRelativePath)) - compileAll(srcDir, classpath = emptyList(), tmpDir) - } - } - private fun doCompileKotlin(srcDir: File, classpath: List, tmpDir: TemporaryFolder): List { if (srcDir.walk().none { it.path.endsWith(".kt") }) { return emptyList() @@ -187,70 +154,21 @@ abstract class ClasspathSnapshotTestCommon { .map { ClassFile(classesDir, it.toRelativeString(classesDir)) } .sortedBy { it.unixStyleRelativePath.substringBefore(".class") } } + } + + object ClassFileUtil { // `ClassFile`s in production code could be in a jar, but the `ClassFile`s in tests are currently in a directory, so converting it // to a File is possible. - @Suppress("MemberVisibilityCanBePrivate") fun ClassFile.asFile() = File(classRoot, unixStyleRelativePath) - @Suppress("MemberVisibilityCanBePrivate") fun ClassFile.readBytes() = asFile().readBytes() - fun ClassFile.snapshot(protoBased: Boolean? = null): ClassSnapshot = listOf(this).snapshotAll(protoBased).single() + fun ClassFile.snapshot(protoBased: Boolean? = null): ClassSnapshot = listOf(this).snapshot(protoBased).single() - fun List.snapshotAll(protoBased: Boolean? = null): List { + fun List.snapshot(protoBased: Boolean? = null): List { val classFilesWithContents = this.map { ClassFileWithContents(it, it.readBytes()) } - return ClassSnapshotter.snapshot(classFilesWithContents, protoBased, includeDebugInfoInSnapshot = true) + return ClassSnapshotter.snapshot(classFilesWithContents, protoBased) } } - - abstract class ChangeableTestSourceFile(sourceFile: SourceFile, tmpDir: TemporaryFolder) : TestSourceFile(sourceFile, tmpDir) { - - abstract fun changePublicMethodSignature(): TestSourceFile - - abstract fun changeMethodImplementation(): TestSourceFile - } - - class SimpleKotlinClass(tmpDir: TemporaryFolder) : ChangeableTestSourceFile( - KotlinSourceFile( - baseDir = File(testDataDir, "src/kotlin"), relativePath = "com/example/SimpleKotlinClass.kt", - preCompiledClassFile = ClassFile(File(testDataDir, "classes/kotlin/original"), "com/example/SimpleKotlinClass.class") - ), tmpDir - ) { - - override fun changePublicMethodSignature() = replace( - "publicFunction()", "publicFunction(newParam: Int)", - preCompiledKotlinClassFile = ClassFile( - File(testDataDir, "classes/kotlin/changedPublicMethodSignature"), "com/example/SimpleKotlinClass.class" - ) - ) - - override fun changeMethodImplementation() = replace( - "I'm in a public function", "This function's implementation has changed!", - preCompiledKotlinClassFile = ClassFile( - File(testDataDir, "classes/kotlin/changedMethodImplementation"), "com/example/SimpleKotlinClass.class" - ) - ) - } - - class SimpleJavaClass(tmpDir: TemporaryFolder) : ChangeableTestSourceFile( - JavaSourceFile(File(testDataDir, "src/java"), "com/example/SimpleJavaClass.java"), tmpDir - ) { - - override fun changePublicMethodSignature() = replace("publicMethod()", "publicMethod(int newParam)") - - override fun changeMethodImplementation() = replace("I'm in a public method", "This method's implementation has changed!") - } - - class JavaClassWithNestedClasses(tmpDir: TemporaryFolder) : ChangeableTestSourceFile( - JavaSourceFile(File(testDataDir, "src/java"), "com/example/JavaClassWithNestedClasses.java"), tmpDir - ) { - - /** The source file contains multiple classes, select the one that we want to test. */ - val nestedClassToTest = "com/example/JavaClassWithNestedClasses\$InnerClass" - - override fun changePublicMethodSignature() = replace("publicMethod()", "publicMethod(int newParam)") - - override fun changeMethodImplementation() = replace("I'm in a public method", "This method's implementation has changed!") - } } diff --git a/compiler/incremental-compilation-impl/test/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest.kt b/compiler/incremental-compilation-impl/test/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest.kt index d0fd8e8e82a..9691ac2f4d5 100644 --- a/compiler/incremental-compilation-impl/test/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest.kt +++ b/compiler/incremental-compilation-impl/test/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest.kt @@ -5,141 +5,93 @@ package org.jetbrains.kotlin.incremental.classpathDiff -import org.jetbrains.kotlin.incremental.classpathDiff.ClasspathSnapshotTestCommon.Util.snapshot +import org.jetbrains.kotlin.incremental.classpathDiff.ClasspathSnapshotTestCommon.ClassFileUtil.readBytes +import org.jetbrains.kotlin.incremental.classpathDiff.ClasspathSnapshotTestCommon.SourceFile.JavaSourceFile +import org.jetbrains.kotlin.incremental.classpathDiff.ClasspathSnapshotTestCommon.SourceFile.KotlinSourceFile import org.junit.Assert.assertEquals import org.junit.Assert.assertNotEquals -import org.junit.Before import org.junit.Test -import org.junit.runner.RunWith -import org.junit.runners.Parameterized import java.io.File abstract class ClasspathSnapshotterTest : ClasspathSnapshotTestCommon() { - protected abstract val testSourceFile: ChangeableTestSourceFile - - private lateinit var testClassSnapshot: ClassSnapshot - - @Before - fun setUp() { - testClassSnapshot = testSourceFile.compileAndSnapshot() - } - - @Test - fun `test ClassSnapshotter's result against expected snapshot`() { - assertEquals(getExpectedSnapshotFile().readText(), testClassSnapshot.toGson()) - } - - private fun getExpectedSnapshotFile() = testSourceFile.sourceFile.asFile().path.let { - File(it.substringBeforeLast("src") + "expected-snapshot" + it.substringAfterLast("src").substringBeforeLast('.') + ".json") - } - - @Test - fun `test ClassSnapshotter extracts ABI info from a class`() { - // Change public method signature - val updatedSnapshot = testSourceFile.changePublicMethodSignature().compileAndSnapshot() - - // The snapshot must change - assertNotEquals(testClassSnapshot.toGson(), updatedSnapshot.toGson()) - } - - @Test - fun `test ClassSnapshotter does not extract non-ABI info from a class`() { - // Change method implementation - val updatedSnapshot = testSourceFile.changeMethodImplementation().compileAndSnapshot() - - // The snapshot must not change - assertEquals(testClassSnapshot.toGson(), updatedSnapshot.toGson()) - } -} - -class KotlinClassesClasspathSnapshotterTest : ClasspathSnapshotterTest() { - override val testSourceFile = SimpleKotlinClass(tmpDir) -} - -@RunWith(Parameterized::class) -class JavaClassesClasspathSnapshotterTest(private val protoBased: Boolean) : ClasspathSnapshotTestCommon() { - companion object { - @Parameterized.Parameters(name = "protoBased={0}") - @JvmStatic - fun parameters() = listOf(true, false) + val testDataDir = + File("compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest") } - private val testSourceFile = SimpleJavaClass(tmpDir) + protected abstract val sourceFile: TestSourceFile + protected abstract val sourceFileWithAbiChange: TestSourceFile + protected abstract val sourceFileWithNonAbiChange: TestSourceFile - private lateinit var testClassSnapshot: ClassSnapshot - - @Before - fun setUp() { - testClassSnapshot = testSourceFile.compile().snapshot(protoBased) - } - - @Test - fun `test ClassSnapshotter's result against expected snapshot`() { - assertEquals(getExpectedSnapshotFile().readText(), testClassSnapshot.toGson()) - } - - private fun getExpectedSnapshotFile() = testSourceFile.sourceFile.asFile().path.let { - File( - it.substringBeforeLast("src") + "expected-snapshot" + it.substringAfterLast("src") - .substringBeforeLast('.') + "-protoBased=$protoBased.json" - ) - } - - @Test - fun `test ClassSnapshotter extracts ABI info from a class`() { - // Change public method signature - val updatedSnapshot = testSourceFile.changePublicMethodSignature().compile().snapshot(protoBased) - - // The snapshot must change - assertNotEquals(testClassSnapshot.toGson(), updatedSnapshot.toGson()) - } - - @Test - fun `test ClassSnapshotter does not extract non-ABI info from a class`() { - // Change method implementation - val updatedSnapshot = testSourceFile.changeMethodImplementation().compile().snapshot(protoBased) - - // The snapshot must not change - assertEquals(testClassSnapshot.toGson(), updatedSnapshot.toGson()) - } -} - -class JavaClassWithNestedClassesClasspathSnapshotterTest : ClasspathSnapshotTestCommon() { - - private val testSourceFile = JavaClassWithNestedClasses(tmpDir) - - private lateinit var testClassSnapshot: ClassSnapshot - - @Before - fun setUp() { - testClassSnapshot = testSourceFile.compileAndSnapshotNestedClass() - } - - private fun TestSourceFile.compileAndSnapshotNestedClass(): ClassSnapshot { - return compileAndSnapshotAll().single { - if (it is RegularJavaClassSnapshot) { - it.classAbiExcludingMembers.name == testSourceFile.nestedClassToTest - } else false + private val expectedSnapshotFile: File + get() = sourceFile.asFile().path.let { + File(it.substringBeforeLast("src") + "expected-snapshot" + it.substringAfterLast("src").substringBeforeLast('.') + ".json") } - } @Test fun `test ClassSnapshotter's result against expected snapshot`() { - val expectedSnapshotFile = File("${testDataDir.path}/expected-snapshot/java/${testSourceFile.nestedClassToTest}.json") - assertEquals(expectedSnapshotFile.readText(), testClassSnapshot.toGson()) + val classSnapshot = sourceFile.compileSingle().let { + ClassSnapshotter.snapshot(listOf(ClassFileWithContents(it, it.readBytes())), includeDebugInfoInSnapshot = true) + }.single() + + assertEquals(expectedSnapshotFile.readText(), classSnapshot.toGson()) } @Test fun `test ClassSnapshotter extracts ABI info from a class`() { - val updatedSnapshot = testSourceFile.changePublicMethodSignature().compileAndSnapshotNestedClass() - assertNotEquals(testClassSnapshot.toGson(), updatedSnapshot.toGson()) + // After an ABI change, the snapshot must change + assertNotEquals(sourceFile.compileAndSnapshot().toGson(), sourceFileWithAbiChange.compileAndSnapshot().toGson()) } @Test fun `test ClassSnapshotter does not extract non-ABI info from a class`() { - val updatedSnapshot = testSourceFile.changeMethodImplementation().compileAndSnapshotNestedClass() - assertEquals(testClassSnapshot.toGson(), updatedSnapshot.toGson()) + // After a non-ABI change, the snapshot must not change + assertEquals(sourceFile.compileAndSnapshot().toGson(), sourceFileWithNonAbiChange.compileAndSnapshot().toGson()) } } + +class KotlinOnlyClasspathSnapshotterTest : ClasspathSnapshotterTest() { + + override val sourceFile = TestSourceFile( + KotlinSourceFile( + baseDir = File(testDataDir, "src/kotlin"), relativePath = "com/example/SimpleClass.kt", + preCompiledClassFile = ClassFile(File(testDataDir, "classes/kotlin"), "com/example/SimpleClass.class") + ), tmpDir + ) + + override val sourceFileWithAbiChange = TestSourceFile( + KotlinSourceFile( + baseDir = File(testDataDir, "src-changed/kotlin/abi-change"), relativePath = "com/example/SimpleClass.kt", + preCompiledClassFile = ClassFile(File(testDataDir, "classes-changed/kotllin/abi-change"), "com/example/SimpleClass.class") + ), tmpDir + ) + + override val sourceFileWithNonAbiChange = TestSourceFile( + KotlinSourceFile( + baseDir = File(testDataDir, "src-changed/kotlin/non-abi-change"), relativePath = "com/example/SimpleClass.kt", + preCompiledClassFile = ClassFile(File(testDataDir, "classes-changed/kotlin/non-abi-change"), "com/example/SimpleClass.class") + ), tmpDir + ) +} + +class JavaOnlyClasspathSnapshotterTest : ClasspathSnapshotterTest() { + + override val sourceFile = TestSourceFile( + JavaSourceFile( + baseDir = File(testDataDir, "src/java"), relativePath = "com/example/SimpleClass.java", + ), tmpDir + ) + + override val sourceFileWithAbiChange = TestSourceFile( + JavaSourceFile( + baseDir = File(testDataDir, "src-changed/java/abi-change"), relativePath = "com/example/SimpleClass.java", + ), tmpDir + ) + + override val sourceFileWithNonAbiChange = TestSourceFile( + JavaSourceFile( + baseDir = File(testDataDir, "src-changed/java/non-abi-change"), relativePath = "com/example/SimpleClass.java", + ), tmpDir + ) +} diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testAbiVersusNonAbiChanges/classes/kotlin/current-classpath/0/com/example/SomeClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testAbiVersusNonAbiChanges/classes/kotlin/current-classpath/0/com/example/SomeClass.class new file mode 100644 index 00000000000..c700fd07975 Binary files /dev/null and b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testAbiVersusNonAbiChanges/classes/kotlin/current-classpath/0/com/example/SomeClass.class differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testAbiVersusNonAbiChanges/classes/kotlin/previous-classpath/0/com/example/SomeClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testAbiVersusNonAbiChanges/classes/kotlin/previous-classpath/0/com/example/SomeClass.class new file mode 100644 index 00000000000..db3f1723164 Binary files /dev/null and b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testAbiVersusNonAbiChanges/classes/kotlin/previous-classpath/0/com/example/SomeClass.class differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testAbiVersusNonAbiChanges/src/java/current-classpath/0/com/example/SomeClass.java b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testAbiVersusNonAbiChanges/src/java/current-classpath/0/com/example/SomeClass.java new file mode 100644 index 00000000000..24263efa842 --- /dev/null +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testAbiVersusNonAbiChanges/src/java/current-classpath/0/com/example/SomeClass.java @@ -0,0 +1,22 @@ +package com.example; + +public class SomeClass { + + public long publicFieldChangedType = 0; + + public int publicFieldChangedValue = 1000; + + private long privateFieldChangedType = 0; + + public long publicMethodChangedSignature() { + return 0; + } + + public int publicMethodChangedImplementation() { + return 1000; + } + + private long privateMethodChangedSignature() { + return 0; + } +} \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testAbiVersusNonAbiChanges/src/java/previous-classpath/0/com/example/SomeClass.java b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testAbiVersusNonAbiChanges/src/java/previous-classpath/0/com/example/SomeClass.java new file mode 100644 index 00000000000..9995dbb49f3 --- /dev/null +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testAbiVersusNonAbiChanges/src/java/previous-classpath/0/com/example/SomeClass.java @@ -0,0 +1,22 @@ +package com.example; + +public class SomeClass { + + public int publicFieldChangedType = 0; + + public int publicFieldChangedValue = 0; + + private int privateFieldChangedType = 0; + + public int publicMethodChangedSignature() { + return 0; + } + + public int publicMethodChangedImplementation() { + return 0; + } + + private int privateMethodChangedSignature() { + return 0; + } +} \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testAbiVersusNonAbiChanges/src/kotlin/current-classpath/0/com/example/SomeClass.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testAbiVersusNonAbiChanges/src/kotlin/current-classpath/0/com/example/SomeClass.kt new file mode 100644 index 00000000000..05b376904be --- /dev/null +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testAbiVersusNonAbiChanges/src/kotlin/current-classpath/0/com/example/SomeClass.kt @@ -0,0 +1,16 @@ +package com.example + +class SomeClass { + + val publicPropertyChangedType: Long = 0 + + val publicPropertyChangedValue: Int = 1000 + + private val privatePropertyChangedType: Long = 0 + + fun publicFunctionChangedSignature(): Long = 0 + + fun publicFunctionChangedImplementation(): Int = 1000 + + private fun privateFunctionChangedSignature(): Long = 0 +} \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testAbiVersusNonAbiChanges/src/kotlin/previous-classpath/0/com/example/SomeClass.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testAbiVersusNonAbiChanges/src/kotlin/previous-classpath/0/com/example/SomeClass.kt new file mode 100644 index 00000000000..94f39157585 --- /dev/null +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testAbiVersusNonAbiChanges/src/kotlin/previous-classpath/0/com/example/SomeClass.kt @@ -0,0 +1,16 @@ +package com.example + +class SomeClass { + + val publicPropertyChangedType: Int = 0 + + val publicPropertyChangedValue: Int = 0 + + private val privatePropertyChangedType: Int = 0 + + fun publicFunctionChangedSignature(): Int = 0 + + fun publicFunctionChangedImplementation(): Int = 0 + + private fun privateFunctionChangedSignature(): Int = 0 +} \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testConstantsAndInlineFunctions_KotlinOnly/classes/current-classpath/0/com/example/SomeClass$CompanionObject.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testConstantsAndInlineFunctions_KotlinOnly/classes/current-classpath/0/com/example/SomeClass$CompanionObject.class new file mode 100644 index 00000000000..7d737623d52 Binary files /dev/null and b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testConstantsAndInlineFunctions_KotlinOnly/classes/current-classpath/0/com/example/SomeClass$CompanionObject.class differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testConstantsAndInlineFunctions_KotlinOnly/classes/current-classpath/0/com/example/SomeClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testConstantsAndInlineFunctions_KotlinOnly/classes/current-classpath/0/com/example/SomeClass.class new file mode 100644 index 00000000000..1f9879b47b1 Binary files /dev/null and b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testConstantsAndInlineFunctions_KotlinOnly/classes/current-classpath/0/com/example/SomeClass.class differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testConstantsAndInlineFunctions_KotlinOnly/classes/previous-classpath/0/com/example/SomeClass$CompanionObject.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testConstantsAndInlineFunctions_KotlinOnly/classes/previous-classpath/0/com/example/SomeClass$CompanionObject.class new file mode 100644 index 00000000000..c358e66dcb8 Binary files /dev/null and b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testConstantsAndInlineFunctions_KotlinOnly/classes/previous-classpath/0/com/example/SomeClass$CompanionObject.class differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testConstantsAndInlineFunctions_KotlinOnly/classes/previous-classpath/0/com/example/SomeClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testConstantsAndInlineFunctions_KotlinOnly/classes/previous-classpath/0/com/example/SomeClass.class new file mode 100644 index 00000000000..1ecc638ce58 Binary files /dev/null and b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testConstantsAndInlineFunctions_KotlinOnly/classes/previous-classpath/0/com/example/SomeClass.class differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testConstantsAndInlineFunctions_KotlinOnly/src/current-classpath/0/com/example/SomeClass.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testConstantsAndInlineFunctions_KotlinOnly/src/current-classpath/0/com/example/SomeClass.kt new file mode 100644 index 00000000000..ff89ebe398a --- /dev/null +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testConstantsAndInlineFunctions_KotlinOnly/src/current-classpath/0/com/example/SomeClass.kt @@ -0,0 +1,18 @@ +package com.example + +class SomeClass { + + // Constants are not allowed in a class, only allowed at the top level or in an object. + + companion object CompanionObject { + const val constantChangedType: Long = 0 + const val constantChangedValue: Int = 1000 + const val constantUnchanged: Int = 0 + private const val privateConstantChangedType: Long = 0 + } + + inline fun inlineFunctionChangedSignature(): Long = 0 + inline fun inlineFunctionChangedImplementation(): Int = 1000 + inline fun inlineFunctionChangedUnchanged(): Int = 0 + private inline fun privateInlineFunctionChangedSignature(): Long = 0 +} \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testConstantsAndInlineFunctions_KotlinOnly/src/previous-classpath/0/com/example/SomeClass.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testConstantsAndInlineFunctions_KotlinOnly/src/previous-classpath/0/com/example/SomeClass.kt new file mode 100644 index 00000000000..84da29aefb4 --- /dev/null +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testConstantsAndInlineFunctions_KotlinOnly/src/previous-classpath/0/com/example/SomeClass.kt @@ -0,0 +1,18 @@ +package com.example + +class SomeClass { + + // Constants are not allowed in a class, only allowed at the top level or in an object. + + companion object CompanionObject { + const val constantChangedType: Int = 0 + const val constantChangedValue: Int = 0 + const val constantUnchanged: Int = 0 + private const val privateConstantChangedType: Int = 0 + } + + inline fun inlineFunctionChangedSignature(): Int = 0 + inline fun inlineFunctionChangedImplementation(): Int = 0 + inline fun inlineFunctionChangedUnchanged(): Int = 0 + private inline fun privateInlineFunctionChangedSignature(): Int = 0 +} \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/classes/current-classpath/0/com/example/FileFacadeKt.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/classes/current-classpath/0/com/example/FileFacadeKt.class new file mode 100644 index 00000000000..dc23290d977 Binary files /dev/null and b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/classes/current-classpath/0/com/example/FileFacadeKt.class differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/classes/current-classpath/0/com/example/MultifileClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/classes/current-classpath/0/com/example/MultifileClass.class new file mode 100644 index 00000000000..1da67a8a1f4 Binary files /dev/null and b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/classes/current-classpath/0/com/example/MultifileClass.class differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/classes/current-classpath/0/com/example/MultifileClass__MultifileClass1Kt.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/classes/current-classpath/0/com/example/MultifileClass__MultifileClass1Kt.class new file mode 100644 index 00000000000..2be0b1d8c32 Binary files /dev/null and b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/classes/current-classpath/0/com/example/MultifileClass__MultifileClass1Kt.class differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/classes/current-classpath/0/com/example/MultifileClass__MultifileClass2Kt.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/classes/current-classpath/0/com/example/MultifileClass__MultifileClass2Kt.class new file mode 100644 index 00000000000..da749ca4a26 Binary files /dev/null and b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/classes/current-classpath/0/com/example/MultifileClass__MultifileClass2Kt.class differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/classes/current-classpath/0/com/example/NormalClass$CompanionObject.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/classes/current-classpath/0/com/example/NormalClass$CompanionObject.class new file mode 100644 index 00000000000..38b325b278c Binary files /dev/null and b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/classes/current-classpath/0/com/example/NormalClass$CompanionObject.class differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/classes/current-classpath/0/com/example/NormalClass$NestedClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/classes/current-classpath/0/com/example/NormalClass$NestedClass.class new file mode 100644 index 00000000000..cca4f9c56fd Binary files /dev/null and b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/classes/current-classpath/0/com/example/NormalClass$NestedClass.class differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/classes/current-classpath/0/com/example/NormalClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/classes/current-classpath/0/com/example/NormalClass.class new file mode 100644 index 00000000000..66e25fa418b Binary files /dev/null and b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/classes/current-classpath/0/com/example/NormalClass.class differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/classes/previous-classpath/0/com/example/NormalClass$CompanionObject.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/classes/previous-classpath/0/com/example/NormalClass$CompanionObject.class new file mode 100644 index 00000000000..3a0c26ee9e5 Binary files /dev/null and b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/classes/previous-classpath/0/com/example/NormalClass$CompanionObject.class differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/classes/previous-classpath/0/com/example/NormalClass$NestedClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/classes/previous-classpath/0/com/example/NormalClass$NestedClass.class new file mode 100644 index 00000000000..176eeee0727 Binary files /dev/null and b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/classes/previous-classpath/0/com/example/NormalClass$NestedClass.class differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/classes/previous-classpath/0/com/example/NormalClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/classes/previous-classpath/0/com/example/NormalClass.class new file mode 100644 index 00000000000..2371ba43a75 Binary files /dev/null and b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/classes/previous-classpath/0/com/example/NormalClass.class differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/src/current-classpath/0/com/example/FileFacade.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/src/current-classpath/0/com/example/FileFacade.kt new file mode 100644 index 00000000000..1143ba4dbb4 --- /dev/null +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/src/current-classpath/0/com/example/FileFacade.kt @@ -0,0 +1,4 @@ +package com.example + +val propertyInFileFacade = 0 +fun functionInFileFacade() = 0 \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/src/current-classpath/0/com/example/MultifileClass1.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/src/current-classpath/0/com/example/MultifileClass1.kt new file mode 100644 index 00000000000..0b5c95a7aba --- /dev/null +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/src/current-classpath/0/com/example/MultifileClass1.kt @@ -0,0 +1,7 @@ +@file:JvmName("MultifileClass") +@file:JvmMultifileClass + +package com.example + +val propertyInMultifileClass1 = 0 +fun functionInMultifileClass1() = 0 \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/src/current-classpath/0/com/example/MultifileClass2.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/src/current-classpath/0/com/example/MultifileClass2.kt new file mode 100644 index 00000000000..6d730b0d4de --- /dev/null +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/src/current-classpath/0/com/example/MultifileClass2.kt @@ -0,0 +1,7 @@ +@file:JvmName("MultifileClass") +@file:JvmMultifileClass + +package com.example + +val propertyInMultifileClass2 = 0 +fun functionInMultifileClass2() = 0 \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/src/current-classpath/0/com/example/NormalClass.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/src/current-classpath/0/com/example/NormalClass.kt new file mode 100644 index 00000000000..fad6c220393 --- /dev/null +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/src/current-classpath/0/com/example/NormalClass.kt @@ -0,0 +1,16 @@ +package com.example + +class NormalClass { + val propertyInNormalClass = 0 + fun functionInNormalClass() = 0 + + companion object CompanionObject { + val propertyInCompanionObject = 0 + fun functionInCompanionObject() = 0 + } + + class NestedClass { + val propertyInNestedClass = 0 + fun functionInNestedClass() = 0 + } +} diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/src/previous-classpath/0/com/example/FileFacade.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/src/previous-classpath/0/com/example/FileFacade.kt new file mode 100644 index 00000000000..96011bb7ad8 --- /dev/null +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/src/previous-classpath/0/com/example/FileFacade.kt @@ -0,0 +1 @@ +package com.example \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/src/previous-classpath/0/com/example/MultifileClass1.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/src/previous-classpath/0/com/example/MultifileClass1.kt new file mode 100644 index 00000000000..f522e0df7ca --- /dev/null +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/src/previous-classpath/0/com/example/MultifileClass1.kt @@ -0,0 +1,4 @@ +@file:JvmName("MultifileClass") +@file:JvmMultifileClass + +package com.example \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/src/previous-classpath/0/com/example/MultifileClass2.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/src/previous-classpath/0/com/example/MultifileClass2.kt new file mode 100644 index 00000000000..f522e0df7ca --- /dev/null +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/src/previous-classpath/0/com/example/MultifileClass2.kt @@ -0,0 +1,4 @@ +@file:JvmName("MultifileClass") +@file:JvmMultifileClass + +package com.example \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/src/previous-classpath/0/com/example/NormalClass.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/src/previous-classpath/0/com/example/NormalClass.kt new file mode 100644 index 00000000000..9b0ec4e7136 --- /dev/null +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testDifferentClassKinds_KotlinOnly/src/previous-classpath/0/com/example/NormalClass.kt @@ -0,0 +1,10 @@ +package com.example + +class NormalClass { + + companion object CompanionObject { + } + + class NestedClass { + } +} \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/java/current-classpath/0/com/example/ChangedSuperClass.java b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_JavaOnly/src/current-classpath/0/com/example/ChangedSuperClass.java similarity index 100% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/java/current-classpath/0/com/example/ChangedSuperClass.java rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_JavaOnly/src/current-classpath/0/com/example/ChangedSuperClass.java diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_JavaOnly/src/current-classpath/0/com/example/SubClassOfChangedSuperClass.java b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_JavaOnly/src/current-classpath/0/com/example/SubClassOfChangedSuperClass.java new file mode 100644 index 00000000000..4440901be17 --- /dev/null +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_JavaOnly/src/current-classpath/0/com/example/SubClassOfChangedSuperClass.java @@ -0,0 +1,4 @@ +package com.example; + +public class SubClassOfChangedSuperClass extends ChangedSuperClass { +} \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_JavaOnly/src/current-classpath/0/com/example/SubSubClassOfChangedSuperClass.java b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_JavaOnly/src/current-classpath/0/com/example/SubSubClassOfChangedSuperClass.java new file mode 100644 index 00000000000..3b31ad15ca6 --- /dev/null +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_JavaOnly/src/current-classpath/0/com/example/SubSubClassOfChangedSuperClass.java @@ -0,0 +1,4 @@ +package com.example; + +public class SubSubClassOfChangedSuperClass extends SubClassOfChangedSuperClass { +} \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/java/current-classpath/0/com/example/UnimpactedClass.java b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_JavaOnly/src/current-classpath/0/com/example/UnimpactedClass.java similarity index 100% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/java/current-classpath/0/com/example/UnimpactedClass.java rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_JavaOnly/src/current-classpath/0/com/example/UnimpactedClass.java diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/java/previous-classpath/0/com/example/ChangedSuperClass.java b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_JavaOnly/src/previous-classpath/0/com/example/ChangedSuperClass.java similarity index 65% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/java/previous-classpath/0/com/example/ChangedSuperClass.java rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_JavaOnly/src/previous-classpath/0/com/example/ChangedSuperClass.java index 15a1acb5b3e..7bed006e736 100644 --- a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/java/previous-classpath/0/com/example/ChangedSuperClass.java +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_JavaOnly/src/previous-classpath/0/com/example/ChangedSuperClass.java @@ -4,6 +4,7 @@ public class ChangedSuperClass { public int changedField = 0; - public void changedMethod() { + public int changedMethod() { + return 0; } } \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_JavaOnly/src/previous-classpath/0/com/example/SubClassOfChangedSuperClass.java b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_JavaOnly/src/previous-classpath/0/com/example/SubClassOfChangedSuperClass.java new file mode 100644 index 00000000000..4440901be17 --- /dev/null +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_JavaOnly/src/previous-classpath/0/com/example/SubClassOfChangedSuperClass.java @@ -0,0 +1,4 @@ +package com.example; + +public class SubClassOfChangedSuperClass extends ChangedSuperClass { +} \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_JavaOnly/src/previous-classpath/0/com/example/SubSubClassOfChangedSuperClass.java b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_JavaOnly/src/previous-classpath/0/com/example/SubSubClassOfChangedSuperClass.java new file mode 100644 index 00000000000..3b31ad15ca6 --- /dev/null +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_JavaOnly/src/previous-classpath/0/com/example/SubSubClassOfChangedSuperClass.java @@ -0,0 +1,4 @@ +package com.example; + +public class SubSubClassOfChangedSuperClass extends SubClassOfChangedSuperClass { +} \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/java/previous-classpath/0/com/example/UnimpactedClass.java b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_JavaOnly/src/previous-classpath/0/com/example/UnimpactedClass.java similarity index 100% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/java/previous-classpath/0/com/example/UnimpactedClass.java rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_JavaOnly/src/previous-classpath/0/com/example/UnimpactedClass.java diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/classes/current-classpath/0/com/example/KotlinSubClassOfChangedJavaSuperClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/classes/current-classpath/0/com/example/KotlinSubClassOfChangedJavaSuperClass.class new file mode 100644 index 00000000000..92752f75946 Binary files /dev/null and b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/classes/current-classpath/0/com/example/KotlinSubClassOfChangedJavaSuperClass.class differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/classes/current-classpath/0/com/example/KotlinSubClassOfChangedKotlinSuperClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/classes/current-classpath/0/com/example/KotlinSubClassOfChangedKotlinSuperClass.class new file mode 100644 index 00000000000..cf121630525 Binary files /dev/null and b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/classes/current-classpath/0/com/example/KotlinSubClassOfChangedKotlinSuperClass.class differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/classes/current-classpath/0/com/example/KotlinSubClassOfJavaSuperClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/classes/current-classpath/0/com/example/KotlinSubClassOfJavaSuperClass.class deleted file mode 100644 index 2edba3af041..00000000000 Binary files a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/classes/current-classpath/0/com/example/KotlinSubClassOfJavaSuperClass.class and /dev/null differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/classes/current-classpath/0/com/example/KotlinSubClassOfKotlinSuperClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/classes/current-classpath/0/com/example/KotlinSubClassOfKotlinSuperClass.class deleted file mode 100644 index 7b930ba928f..00000000000 Binary files a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/classes/current-classpath/0/com/example/KotlinSubClassOfKotlinSuperClass.class and /dev/null differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/classes/previous-classpath/0/com/example/KotlinSubClassOfChangedJavaSuperClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/classes/previous-classpath/0/com/example/KotlinSubClassOfChangedJavaSuperClass.class new file mode 100644 index 00000000000..92752f75946 Binary files /dev/null and b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/classes/previous-classpath/0/com/example/KotlinSubClassOfChangedJavaSuperClass.class differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/classes/previous-classpath/0/com/example/KotlinSubClassOfChangedKotlinSuperClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/classes/previous-classpath/0/com/example/KotlinSubClassOfChangedKotlinSuperClass.class new file mode 100644 index 00000000000..cf121630525 Binary files /dev/null and b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/classes/previous-classpath/0/com/example/KotlinSubClassOfChangedKotlinSuperClass.class differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/classes/previous-classpath/0/com/example/KotlinSubClassOfJavaSuperClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/classes/previous-classpath/0/com/example/KotlinSubClassOfJavaSuperClass.class deleted file mode 100644 index 2edba3af041..00000000000 Binary files a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/classes/previous-classpath/0/com/example/KotlinSubClassOfJavaSuperClass.class and /dev/null differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/classes/previous-classpath/0/com/example/KotlinSubClassOfKotlinSuperClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/classes/previous-classpath/0/com/example/KotlinSubClassOfKotlinSuperClass.class deleted file mode 100644 index 7b930ba928f..00000000000 Binary files a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/classes/previous-classpath/0/com/example/KotlinSubClassOfKotlinSuperClass.class and /dev/null differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/current-classpath/0/com/example/JavaSubClassOfChangedJavaSuperClass.java b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/current-classpath/0/com/example/JavaSubClassOfChangedJavaSuperClass.java new file mode 100644 index 00000000000..deebf7ca072 --- /dev/null +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/current-classpath/0/com/example/JavaSubClassOfChangedJavaSuperClass.java @@ -0,0 +1,4 @@ +package com.example; + +public class JavaSubClassOfChangedJavaSuperClass extends ChangedJavaSuperClass { +} \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/current-classpath/0/com/example/JavaSubClassOfChangedKotlinSuperClass.java b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/current-classpath/0/com/example/JavaSubClassOfChangedKotlinSuperClass.java new file mode 100644 index 00000000000..84b61f687a3 --- /dev/null +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/current-classpath/0/com/example/JavaSubClassOfChangedKotlinSuperClass.java @@ -0,0 +1,4 @@ +package com.example; + +public class JavaSubClassOfChangedKotlinSuperClass extends ChangedKotlinSuperClass { +} \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/current-classpath/0/com/example/JavaSubClassOfJavaSuperClass.java b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/current-classpath/0/com/example/JavaSubClassOfJavaSuperClass.java deleted file mode 100644 index 595bf203e9a..00000000000 --- a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/current-classpath/0/com/example/JavaSubClassOfJavaSuperClass.java +++ /dev/null @@ -1,4 +0,0 @@ -package com.example; - -public class JavaSubClassOfJavaSuperClass extends ChangedJavaSuperClass { -} \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/current-classpath/0/com/example/JavaSubClassOfKotlinSuperClass.java b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/current-classpath/0/com/example/JavaSubClassOfKotlinSuperClass.java deleted file mode 100644 index c8a1fba1a32..00000000000 --- a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/current-classpath/0/com/example/JavaSubClassOfKotlinSuperClass.java +++ /dev/null @@ -1,4 +0,0 @@ -package com.example; - -public class JavaSubClassOfKotlinSuperClass extends ChangedKotlinSuperClass { -} \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/current-classpath/0/com/example/KotlinSubClassOfChangedJavaSuperClass.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/current-classpath/0/com/example/KotlinSubClassOfChangedJavaSuperClass.kt new file mode 100644 index 00000000000..3aa9b4c963b --- /dev/null +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/current-classpath/0/com/example/KotlinSubClassOfChangedJavaSuperClass.kt @@ -0,0 +1,3 @@ +package com.example + +class KotlinSubClassOfChangedJavaSuperClass : ChangedJavaSuperClass() \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/current-classpath/0/com/example/KotlinSubClassOfChangedKotlinSuperClass.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/current-classpath/0/com/example/KotlinSubClassOfChangedKotlinSuperClass.kt new file mode 100644 index 00000000000..a73db0990e1 --- /dev/null +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/current-classpath/0/com/example/KotlinSubClassOfChangedKotlinSuperClass.kt @@ -0,0 +1,3 @@ +package com.example + +class KotlinSubClassOfChangedKotlinSuperClass : ChangedKotlinSuperClass() \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/current-classpath/0/com/example/KotlinSubClassOfJavaSuperClass.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/current-classpath/0/com/example/KotlinSubClassOfJavaSuperClass.kt deleted file mode 100644 index 2f672bf834a..00000000000 --- a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/current-classpath/0/com/example/KotlinSubClassOfJavaSuperClass.kt +++ /dev/null @@ -1,3 +0,0 @@ -package com.example - -class KotlinSubClassOfJavaSuperClass : ChangedJavaSuperClass() \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/current-classpath/0/com/example/KotlinSubClassOfKotlinSuperClass.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/current-classpath/0/com/example/KotlinSubClassOfKotlinSuperClass.kt deleted file mode 100644 index 30ada7218e5..00000000000 --- a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/current-classpath/0/com/example/KotlinSubClassOfKotlinSuperClass.kt +++ /dev/null @@ -1,3 +0,0 @@ -package com.example - -class KotlinSubClassOfKotlinSuperClass : ChangedKotlinSuperClass() \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/previous-classpath/0/com/example/JavaSubClassOfChangedJavaSuperClass.java b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/previous-classpath/0/com/example/JavaSubClassOfChangedJavaSuperClass.java new file mode 100644 index 00000000000..deebf7ca072 --- /dev/null +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/previous-classpath/0/com/example/JavaSubClassOfChangedJavaSuperClass.java @@ -0,0 +1,4 @@ +package com.example; + +public class JavaSubClassOfChangedJavaSuperClass extends ChangedJavaSuperClass { +} \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/previous-classpath/0/com/example/JavaSubClassOfChangedKotlinSuperClass.java b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/previous-classpath/0/com/example/JavaSubClassOfChangedKotlinSuperClass.java new file mode 100644 index 00000000000..84b61f687a3 --- /dev/null +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/previous-classpath/0/com/example/JavaSubClassOfChangedKotlinSuperClass.java @@ -0,0 +1,4 @@ +package com.example; + +public class JavaSubClassOfChangedKotlinSuperClass extends ChangedKotlinSuperClass { +} \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/previous-classpath/0/com/example/JavaSubClassOfJavaSuperClass.java b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/previous-classpath/0/com/example/JavaSubClassOfJavaSuperClass.java deleted file mode 100644 index 595bf203e9a..00000000000 --- a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/previous-classpath/0/com/example/JavaSubClassOfJavaSuperClass.java +++ /dev/null @@ -1,4 +0,0 @@ -package com.example; - -public class JavaSubClassOfJavaSuperClass extends ChangedJavaSuperClass { -} \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/previous-classpath/0/com/example/JavaSubClassOfKotlinSuperClass.java b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/previous-classpath/0/com/example/JavaSubClassOfKotlinSuperClass.java deleted file mode 100644 index c8a1fba1a32..00000000000 --- a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/previous-classpath/0/com/example/JavaSubClassOfKotlinSuperClass.java +++ /dev/null @@ -1,4 +0,0 @@ -package com.example; - -public class JavaSubClassOfKotlinSuperClass extends ChangedKotlinSuperClass { -} \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/previous-classpath/0/com/example/KotlinSubClassOfChangedJavaSuperClass.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/previous-classpath/0/com/example/KotlinSubClassOfChangedJavaSuperClass.kt new file mode 100644 index 00000000000..3aa9b4c963b --- /dev/null +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/previous-classpath/0/com/example/KotlinSubClassOfChangedJavaSuperClass.kt @@ -0,0 +1,3 @@ +package com.example + +class KotlinSubClassOfChangedJavaSuperClass : ChangedJavaSuperClass() \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/previous-classpath/0/com/example/KotlinSubClassOfChangedKotlinSuperClass.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/previous-classpath/0/com/example/KotlinSubClassOfChangedKotlinSuperClass.kt new file mode 100644 index 00000000000..a73db0990e1 --- /dev/null +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/previous-classpath/0/com/example/KotlinSubClassOfChangedKotlinSuperClass.kt @@ -0,0 +1,3 @@ +package com.example + +class KotlinSubClassOfChangedKotlinSuperClass : ChangedKotlinSuperClass() \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/previous-classpath/0/com/example/KotlinSubClassOfJavaSuperClass.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/previous-classpath/0/com/example/KotlinSubClassOfJavaSuperClass.kt deleted file mode 100644 index 2f672bf834a..00000000000 --- a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/previous-classpath/0/com/example/KotlinSubClassOfJavaSuperClass.kt +++ /dev/null @@ -1,3 +0,0 @@ -package com.example - -class KotlinSubClassOfJavaSuperClass : ChangedJavaSuperClass() \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/previous-classpath/0/com/example/KotlinSubClassOfKotlinSuperClass.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/previous-classpath/0/com/example/KotlinSubClassOfKotlinSuperClass.kt deleted file mode 100644 index 30ada7218e5..00000000000 --- a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinAndJava/src/previous-classpath/0/com/example/KotlinSubClassOfKotlinSuperClass.kt +++ /dev/null @@ -1,3 +0,0 @@ -package com.example - -class KotlinSubClassOfKotlinSuperClass : ChangedKotlinSuperClass() \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/classes/kotlin/current-classpath/0/com/example/ChangedSuperClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/classes/current-classpath/0/com/example/ChangedSuperClass.class similarity index 100% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/classes/kotlin/current-classpath/0/com/example/ChangedSuperClass.class rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/classes/current-classpath/0/com/example/ChangedSuperClass.class diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/classes/current-classpath/0/com/example/SubClassOfChangedSuperClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/classes/current-classpath/0/com/example/SubClassOfChangedSuperClass.class new file mode 100644 index 00000000000..a48c1ec9929 Binary files /dev/null and b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/classes/current-classpath/0/com/example/SubClassOfChangedSuperClass.class differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/classes/current-classpath/0/com/example/SubSubClassOfChangedSuperClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/classes/current-classpath/0/com/example/SubSubClassOfChangedSuperClass.class new file mode 100644 index 00000000000..c9346a8a074 Binary files /dev/null and b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/classes/current-classpath/0/com/example/SubSubClassOfChangedSuperClass.class differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/classes/kotlin/current-classpath/0/com/example/UnimpactedClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/classes/current-classpath/0/com/example/UnimpactedClass.class similarity index 100% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/classes/kotlin/current-classpath/0/com/example/UnimpactedClass.class rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/classes/current-classpath/0/com/example/UnimpactedClass.class diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/classes/kotlin/previous-classpath/0/com/example/ChangedSuperClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/classes/previous-classpath/0/com/example/ChangedSuperClass.class similarity index 66% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/classes/kotlin/previous-classpath/0/com/example/ChangedSuperClass.class rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/classes/previous-classpath/0/com/example/ChangedSuperClass.class index 75dfd21635c..7b8134d0dbc 100644 Binary files a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/classes/kotlin/previous-classpath/0/com/example/ChangedSuperClass.class and b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/classes/previous-classpath/0/com/example/ChangedSuperClass.class differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/classes/previous-classpath/0/com/example/SubClassOfChangedSuperClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/classes/previous-classpath/0/com/example/SubClassOfChangedSuperClass.class new file mode 100644 index 00000000000..a48c1ec9929 Binary files /dev/null and b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/classes/previous-classpath/0/com/example/SubClassOfChangedSuperClass.class differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/classes/previous-classpath/0/com/example/SubSubClassOfChangedSuperClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/classes/previous-classpath/0/com/example/SubSubClassOfChangedSuperClass.class new file mode 100644 index 00000000000..c9346a8a074 Binary files /dev/null and b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/classes/previous-classpath/0/com/example/SubSubClassOfChangedSuperClass.class differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/classes/kotlin/previous-classpath/0/com/example/UnimpactedClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/classes/previous-classpath/0/com/example/UnimpactedClass.class similarity index 100% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/classes/kotlin/previous-classpath/0/com/example/UnimpactedClass.class rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/classes/previous-classpath/0/com/example/UnimpactedClass.class diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/kotlin/current-classpath/0/com/example/ChangedSuperClass.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/src/current-classpath/0/com/example/ChangedSuperClass.kt similarity index 100% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/kotlin/current-classpath/0/com/example/ChangedSuperClass.kt rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/src/current-classpath/0/com/example/ChangedSuperClass.kt diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/src/current-classpath/0/com/example/SubClassOfChangedSuperClass.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/src/current-classpath/0/com/example/SubClassOfChangedSuperClass.kt new file mode 100644 index 00000000000..13d72eeefa8 --- /dev/null +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/src/current-classpath/0/com/example/SubClassOfChangedSuperClass.kt @@ -0,0 +1,3 @@ +package com.example + +open class SubClassOfChangedSuperClass : ChangedSuperClass() \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/src/current-classpath/0/com/example/SubSubClassOfChangedSuperClass.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/src/current-classpath/0/com/example/SubSubClassOfChangedSuperClass.kt new file mode 100644 index 00000000000..be51e874b0d --- /dev/null +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/src/current-classpath/0/com/example/SubSubClassOfChangedSuperClass.kt @@ -0,0 +1,3 @@ +package com.example + +class SubSubClassOfChangedSuperClass : SubClassOfChangedSuperClass() \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/kotlin/current-classpath/0/com/example/UnimpactedClass.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/src/current-classpath/0/com/example/UnimpactedClass.kt similarity index 100% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/kotlin/current-classpath/0/com/example/UnimpactedClass.kt rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/src/current-classpath/0/com/example/UnimpactedClass.kt diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/kotlin/previous-classpath/0/com/example/ChangedSuperClass.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/src/previous-classpath/0/com/example/ChangedSuperClass.kt similarity index 73% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/kotlin/previous-classpath/0/com/example/ChangedSuperClass.kt rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/src/previous-classpath/0/com/example/ChangedSuperClass.kt index 034f4316e54..8f30b11e9c8 100644 --- a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/kotlin/previous-classpath/0/com/example/ChangedSuperClass.kt +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/src/previous-classpath/0/com/example/ChangedSuperClass.kt @@ -2,5 +2,5 @@ package com.example; open class ChangedSuperClass { val changedProperty = 0 - fun changedFunction() {} + fun changedFunction() = 0 } \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/src/previous-classpath/0/com/example/SubClassOfChangedSuperClass.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/src/previous-classpath/0/com/example/SubClassOfChangedSuperClass.kt new file mode 100644 index 00000000000..13d72eeefa8 --- /dev/null +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/src/previous-classpath/0/com/example/SubClassOfChangedSuperClass.kt @@ -0,0 +1,3 @@ +package com.example + +open class SubClassOfChangedSuperClass : ChangedSuperClass() \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/src/previous-classpath/0/com/example/SubSubClassOfChangedSuperClass.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/src/previous-classpath/0/com/example/SubSubClassOfChangedSuperClass.kt new file mode 100644 index 00000000000..be51e874b0d --- /dev/null +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/src/previous-classpath/0/com/example/SubSubClassOfChangedSuperClass.kt @@ -0,0 +1,3 @@ +package com.example + +class SubSubClassOfChangedSuperClass : SubClassOfChangedSuperClass() \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/kotlin/previous-classpath/0/com/example/UnimpactedClass.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/src/previous-classpath/0/com/example/UnimpactedClass.kt similarity index 100% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/kotlin/previous-classpath/0/com/example/UnimpactedClass.kt rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOnly/src/previous-classpath/0/com/example/UnimpactedClass.kt diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/classes/kotlin/current-classpath/0/com/example/SubClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/classes/kotlin/current-classpath/0/com/example/SubClass.class deleted file mode 100644 index e44be6b6684..00000000000 Binary files a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/classes/kotlin/current-classpath/0/com/example/SubClass.class and /dev/null differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/classes/kotlin/current-classpath/0/com/example/SubSubClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/classes/kotlin/current-classpath/0/com/example/SubSubClass.class deleted file mode 100644 index 072e4f96e99..00000000000 Binary files a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/classes/kotlin/current-classpath/0/com/example/SubSubClass.class and /dev/null differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/classes/kotlin/previous-classpath/0/com/example/SubClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/classes/kotlin/previous-classpath/0/com/example/SubClass.class deleted file mode 100644 index e44be6b6684..00000000000 Binary files a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/classes/kotlin/previous-classpath/0/com/example/SubClass.class and /dev/null differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/classes/kotlin/previous-classpath/0/com/example/SubSubClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/classes/kotlin/previous-classpath/0/com/example/SubSubClass.class deleted file mode 100644 index 072e4f96e99..00000000000 Binary files a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/classes/kotlin/previous-classpath/0/com/example/SubSubClass.class and /dev/null differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/java/current-classpath/0/com/example/SubClass.java b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/java/current-classpath/0/com/example/SubClass.java deleted file mode 100644 index de38b92e226..00000000000 --- a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/java/current-classpath/0/com/example/SubClass.java +++ /dev/null @@ -1,4 +0,0 @@ -package com.example; - -public class SubClass extends ChangedSuperClass { -} \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/java/current-classpath/0/com/example/SubSubClass.java b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/java/current-classpath/0/com/example/SubSubClass.java deleted file mode 100644 index 18625821e9d..00000000000 --- a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/java/current-classpath/0/com/example/SubSubClass.java +++ /dev/null @@ -1,4 +0,0 @@ -package com.example; - -public class SubSubClass extends SubClass { -} \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/java/previous-classpath/0/com/example/SubClass.java b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/java/previous-classpath/0/com/example/SubClass.java deleted file mode 100644 index de38b92e226..00000000000 --- a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/java/previous-classpath/0/com/example/SubClass.java +++ /dev/null @@ -1,4 +0,0 @@ -package com.example; - -public class SubClass extends ChangedSuperClass { -} \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/java/previous-classpath/0/com/example/SubSubClass.java b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/java/previous-classpath/0/com/example/SubSubClass.java deleted file mode 100644 index 18625821e9d..00000000000 --- a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/java/previous-classpath/0/com/example/SubSubClass.java +++ /dev/null @@ -1,4 +0,0 @@ -package com.example; - -public class SubSubClass extends SubClass { -} \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/kotlin/current-classpath/0/com/example/SubClass.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/kotlin/current-classpath/0/com/example/SubClass.kt deleted file mode 100644 index b6a8eb3f92f..00000000000 --- a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/kotlin/current-classpath/0/com/example/SubClass.kt +++ /dev/null @@ -1,3 +0,0 @@ -package com.example - -open class SubClass : ChangedSuperClass() \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/kotlin/current-classpath/0/com/example/SubSubClass.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/kotlin/current-classpath/0/com/example/SubSubClass.kt deleted file mode 100644 index 4eeefec81f4..00000000000 --- a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/kotlin/current-classpath/0/com/example/SubSubClass.kt +++ /dev/null @@ -1,3 +0,0 @@ -package com.example - -class SubSubClass : SubClass() \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/kotlin/previous-classpath/0/com/example/SubClass.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/kotlin/previous-classpath/0/com/example/SubClass.kt deleted file mode 100644 index b6a8eb3f92f..00000000000 --- a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/kotlin/previous-classpath/0/com/example/SubClass.kt +++ /dev/null @@ -1,3 +0,0 @@ -package com.example - -open class SubClass : ChangedSuperClass() \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/kotlin/previous-classpath/0/com/example/SubSubClass.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/kotlin/previous-classpath/0/com/example/SubSubClass.kt deleted file mode 100644 index 4eeefec81f4..00000000000 --- a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testImpactAnalysis_KotlinOrJava/src/kotlin/previous-classpath/0/com/example/SubSubClass.kt +++ /dev/null @@ -1,3 +0,0 @@ -package com.example - -class SubSubClass : SubClass() \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/classes/kotlin/current-classpath/0/com/example/AddedClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/classes/kotlin/current-classpath/0/com/example/AddedClass.class similarity index 100% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/classes/kotlin/current-classpath/0/com/example/AddedClass.class rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/classes/kotlin/current-classpath/0/com/example/AddedClass.class diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/classes/kotlin/current-classpath/0/com/example/ModifiedClassChangedMembers.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/classes/kotlin/current-classpath/0/com/example/ModifiedClassChangedMembers.class similarity index 100% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/classes/kotlin/current-classpath/0/com/example/ModifiedClassChangedMembers.class rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/classes/kotlin/current-classpath/0/com/example/ModifiedClassChangedMembers.class diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/classes/kotlin/current-classpath/0/com/example/ModifiedClassUnchangedMembers.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/classes/kotlin/current-classpath/0/com/example/ModifiedClassUnchangedMembers.class similarity index 100% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/classes/kotlin/current-classpath/0/com/example/ModifiedClassUnchangedMembers.class rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/classes/kotlin/current-classpath/0/com/example/ModifiedClassUnchangedMembers.class diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/classes/kotlin/current-classpath/0/com/example/UnchangedClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/classes/kotlin/current-classpath/0/com/example/UnchangedClass.class similarity index 100% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/classes/kotlin/current-classpath/0/com/example/UnchangedClass.class rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/classes/kotlin/current-classpath/0/com/example/UnchangedClass.class diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/classes/kotlin/previous-classpath/0/com/example/ModifiedClassChangedMembers.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/classes/kotlin/previous-classpath/0/com/example/ModifiedClassChangedMembers.class similarity index 100% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/classes/kotlin/previous-classpath/0/com/example/ModifiedClassChangedMembers.class rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/classes/kotlin/previous-classpath/0/com/example/ModifiedClassChangedMembers.class diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/classes/kotlin/previous-classpath/0/com/example/ModifiedClassUnchangedMembers.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/classes/kotlin/previous-classpath/0/com/example/ModifiedClassUnchangedMembers.class similarity index 100% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/classes/kotlin/previous-classpath/0/com/example/ModifiedClassUnchangedMembers.class rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/classes/kotlin/previous-classpath/0/com/example/ModifiedClassUnchangedMembers.class diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/classes/kotlin/previous-classpath/0/com/example/RemovedClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/classes/kotlin/previous-classpath/0/com/example/RemovedClass.class similarity index 100% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/classes/kotlin/previous-classpath/0/com/example/RemovedClass.class rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/classes/kotlin/previous-classpath/0/com/example/RemovedClass.class diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/classes/kotlin/previous-classpath/0/com/example/UnchangedClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/classes/kotlin/previous-classpath/0/com/example/UnchangedClass.class similarity index 100% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/classes/kotlin/previous-classpath/0/com/example/UnchangedClass.class rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/classes/kotlin/previous-classpath/0/com/example/UnchangedClass.class diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/java/current-classpath/0/com/example/AddedClass.java b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/src/java/current-classpath/0/com/example/AddedClass.java similarity index 100% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/java/current-classpath/0/com/example/AddedClass.java rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/src/java/current-classpath/0/com/example/AddedClass.java diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/java/current-classpath/0/com/example/ModifiedClassChangedMembers.java b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/src/java/current-classpath/0/com/example/ModifiedClassChangedMembers.java similarity index 100% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/java/current-classpath/0/com/example/ModifiedClassChangedMembers.java rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/src/java/current-classpath/0/com/example/ModifiedClassChangedMembers.java diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/java/current-classpath/0/com/example/ModifiedClassUnchangedMembers.java b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/src/java/current-classpath/0/com/example/ModifiedClassUnchangedMembers.java similarity index 100% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/java/current-classpath/0/com/example/ModifiedClassUnchangedMembers.java rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/src/java/current-classpath/0/com/example/ModifiedClassUnchangedMembers.java diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/java/current-classpath/0/com/example/UnchangedClass.java b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/src/java/current-classpath/0/com/example/UnchangedClass.java similarity index 100% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/java/current-classpath/0/com/example/UnchangedClass.java rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/src/java/current-classpath/0/com/example/UnchangedClass.java diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/java/previous-classpath/0/com/example/ModifiedClassChangedMembers.java b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/src/java/previous-classpath/0/com/example/ModifiedClassChangedMembers.java similarity index 100% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/java/previous-classpath/0/com/example/ModifiedClassChangedMembers.java rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/src/java/previous-classpath/0/com/example/ModifiedClassChangedMembers.java diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/java/previous-classpath/0/com/example/ModifiedClassUnchangedMembers.java b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/src/java/previous-classpath/0/com/example/ModifiedClassUnchangedMembers.java similarity index 100% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/java/previous-classpath/0/com/example/ModifiedClassUnchangedMembers.java rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/src/java/previous-classpath/0/com/example/ModifiedClassUnchangedMembers.java diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/java/previous-classpath/0/com/example/RemovedClass.java b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/src/java/previous-classpath/0/com/example/RemovedClass.java similarity index 100% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/java/previous-classpath/0/com/example/RemovedClass.java rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/src/java/previous-classpath/0/com/example/RemovedClass.java diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/java/previous-classpath/0/com/example/UnchangedClass.java b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/src/java/previous-classpath/0/com/example/UnchangedClass.java similarity index 100% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/java/previous-classpath/0/com/example/UnchangedClass.java rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/src/java/previous-classpath/0/com/example/UnchangedClass.java diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/kotlin/current-classpath/0/com/example/AddedClass.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/src/kotlin/current-classpath/0/com/example/AddedClass.kt similarity index 100% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/kotlin/current-classpath/0/com/example/AddedClass.kt rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/src/kotlin/current-classpath/0/com/example/AddedClass.kt diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/kotlin/current-classpath/0/com/example/ModifiedClassChangedMembers.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/src/kotlin/current-classpath/0/com/example/ModifiedClassChangedMembers.kt similarity index 100% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/kotlin/current-classpath/0/com/example/ModifiedClassChangedMembers.kt rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/src/kotlin/current-classpath/0/com/example/ModifiedClassChangedMembers.kt diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/kotlin/current-classpath/0/com/example/ModifiedClassUnchangedMembers.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/src/kotlin/current-classpath/0/com/example/ModifiedClassUnchangedMembers.kt similarity index 100% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/kotlin/current-classpath/0/com/example/ModifiedClassUnchangedMembers.kt rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/src/kotlin/current-classpath/0/com/example/ModifiedClassUnchangedMembers.kt diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/kotlin/current-classpath/0/com/example/UnchangedClass.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/src/kotlin/current-classpath/0/com/example/UnchangedClass.kt similarity index 100% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/kotlin/current-classpath/0/com/example/UnchangedClass.kt rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/src/kotlin/current-classpath/0/com/example/UnchangedClass.kt diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/kotlin/previous-classpath/0/com/example/ModifiedClassChangedMembers.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/src/kotlin/previous-classpath/0/com/example/ModifiedClassChangedMembers.kt similarity index 100% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/kotlin/previous-classpath/0/com/example/ModifiedClassChangedMembers.kt rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/src/kotlin/previous-classpath/0/com/example/ModifiedClassChangedMembers.kt diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/kotlin/previous-classpath/0/com/example/ModifiedClassUnchangedMembers.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/src/kotlin/previous-classpath/0/com/example/ModifiedClassUnchangedMembers.kt similarity index 100% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/kotlin/previous-classpath/0/com/example/ModifiedClassUnchangedMembers.kt rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/src/kotlin/previous-classpath/0/com/example/ModifiedClassUnchangedMembers.kt diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/kotlin/previous-classpath/0/com/example/RemovedClass.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/src/kotlin/previous-classpath/0/com/example/RemovedClass.kt similarity index 100% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/kotlin/previous-classpath/0/com/example/RemovedClass.kt rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/src/kotlin/previous-classpath/0/com/example/RemovedClass.kt diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/kotlin/previous-classpath/0/com/example/UnchangedClass.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/src/kotlin/previous-classpath/0/com/example/UnchangedClass.kt similarity index 100% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/kotlin/previous-classpath/0/com/example/UnchangedClass.kt rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testModifiedAddedRemovedElements/src/kotlin/previous-classpath/0/com/example/UnchangedClass.kt diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testTopLevelMembers_KotlinOnly/classes/current-classpath/0/com/example/TopLevelMembers2Kt.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testTopLevelMembers_KotlinOnly/classes/current-classpath/0/com/example/TopLevelMembers2Kt.class new file mode 100644 index 00000000000..792045bc22b Binary files /dev/null and b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testTopLevelMembers_KotlinOnly/classes/current-classpath/0/com/example/TopLevelMembers2Kt.class differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/classes/kotlin/current-classpath/0/com/example/TopLevelDeclarationsKt.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testTopLevelMembers_KotlinOnly/classes/current-classpath/0/com/example/TopLevelMembersKt.class similarity index 50% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/classes/kotlin/current-classpath/0/com/example/TopLevelDeclarationsKt.class rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testTopLevelMembers_KotlinOnly/classes/current-classpath/0/com/example/TopLevelMembersKt.class index 8d600b33fbf..b8f01d0ac15 100644 Binary files a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/classes/kotlin/current-classpath/0/com/example/TopLevelDeclarationsKt.class and b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testTopLevelMembers_KotlinOnly/classes/current-classpath/0/com/example/TopLevelMembersKt.class differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testTopLevelMembers_KotlinOnly/classes/previous-classpath/0/com/example/TopLevelMembers2Kt.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testTopLevelMembers_KotlinOnly/classes/previous-classpath/0/com/example/TopLevelMembers2Kt.class new file mode 100644 index 00000000000..6798971ec92 Binary files /dev/null and b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testTopLevelMembers_KotlinOnly/classes/previous-classpath/0/com/example/TopLevelMembers2Kt.class differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/classes/kotlin/previous-classpath/0/com/example/TopLevelDeclarationsKt.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testTopLevelMembers_KotlinOnly/classes/previous-classpath/0/com/example/TopLevelMembersKt.class similarity index 52% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/classes/kotlin/previous-classpath/0/com/example/TopLevelDeclarationsKt.class rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testTopLevelMembers_KotlinOnly/classes/previous-classpath/0/com/example/TopLevelMembersKt.class index 6861ef5b545..cbe28b8da1d 100644 Binary files a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/classes/kotlin/previous-classpath/0/com/example/TopLevelDeclarationsKt.class and b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testTopLevelMembers_KotlinOnly/classes/previous-classpath/0/com/example/TopLevelMembersKt.class differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/kotlin/current-classpath/0/com/example/topLevelDeclarations.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testTopLevelMembers_KotlinOnly/src/current-classpath/0/com/example/topLevelMembers.kt similarity index 100% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/kotlin/current-classpath/0/com/example/topLevelDeclarations.kt rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testTopLevelMembers_KotlinOnly/src/current-classpath/0/com/example/topLevelMembers.kt diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/kotlin/current-classpath/0/com/example/topLevelDeclarations2.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testTopLevelMembers_KotlinOnly/src/current-classpath/0/com/example/topLevelMembers2.kt similarity index 100% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/kotlin/current-classpath/0/com/example/topLevelDeclarations2.kt rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testTopLevelMembers_KotlinOnly/src/current-classpath/0/com/example/topLevelMembers2.kt diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/kotlin/previous-classpath/0/com/example/topLevelDeclarations.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testTopLevelMembers_KotlinOnly/src/previous-classpath/0/com/example/topLevelMembers.kt similarity index 100% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/kotlin/previous-classpath/0/com/example/topLevelDeclarations.kt rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testTopLevelMembers_KotlinOnly/src/previous-classpath/0/com/example/topLevelMembers.kt diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/kotlin/previous-classpath/0/com/example/topLevelDeclarations2.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testTopLevelMembers_KotlinOnly/src/previous-classpath/0/com/example/topLevelMembers2.kt similarity index 100% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/src/kotlin/previous-classpath/0/com/example/topLevelDeclarations2.kt rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testTopLevelMembers_KotlinOnly/src/previous-classpath/0/com/example/topLevelMembers2.kt diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/classes/kotlin/current-classpath/0/com/example/TopLevelDeclarations2Kt.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/classes/kotlin/current-classpath/0/com/example/TopLevelDeclarations2Kt.class deleted file mode 100644 index 09cfd7db180..00000000000 Binary files a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/classes/kotlin/current-classpath/0/com/example/TopLevelDeclarations2Kt.class and /dev/null differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/classes/kotlin/previous-classpath/0/com/example/TopLevelDeclarations2Kt.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/classes/kotlin/previous-classpath/0/com/example/TopLevelDeclarations2Kt.class deleted file mode 100644 index 85e27bc6caa..00000000000 Binary files a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathChangesComputerTest/testVariousAbiChanges/classes/kotlin/previous-classpath/0/com/example/TopLevelDeclarations2Kt.class and /dev/null differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotTestCommon/classes/kotlin/changedMethodImplementation/com/example/SimpleKotlinClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotTestCommon/classes/kotlin/changedMethodImplementation/com/example/SimpleKotlinClass.class deleted file mode 100644 index 497b364379a..00000000000 Binary files a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotTestCommon/classes/kotlin/changedMethodImplementation/com/example/SimpleKotlinClass.class and /dev/null differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotTestCommon/classes/kotlin/changedPublicMethodSignature/com/example/SimpleKotlinClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotTestCommon/classes/kotlin/changedPublicMethodSignature/com/example/SimpleKotlinClass.class deleted file mode 100644 index ee775b79d7f..00000000000 Binary files a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotTestCommon/classes/kotlin/changedPublicMethodSignature/com/example/SimpleKotlinClass.class and /dev/null differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotTestCommon/classes/kotlin/original/com/example/SimpleKotlinClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotTestCommon/classes/kotlin/original/com/example/SimpleKotlinClass.class deleted file mode 100644 index 10cbf992787..00000000000 Binary files a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotTestCommon/classes/kotlin/original/com/example/SimpleKotlinClass.class and /dev/null differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotTestCommon/expected-snapshot/java/com/example/JavaClassWithNestedClasses$InnerClass.json b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotTestCommon/expected-snapshot/java/com/example/JavaClassWithNestedClasses$InnerClass.json deleted file mode 100644 index 04462ee148f..00000000000 --- a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotTestCommon/expected-snapshot/java/com/example/JavaClassWithNestedClasses$InnerClass.json +++ /dev/null @@ -1,62 +0,0 @@ -{ - "classId": { - "packageFqName": { - "fqName": { - "fqName": "com.example" - } - }, - "relativeClassName": { - "fqName": { - "fqName": "JavaClassWithNestedClasses.InnerClass" - } - }, - "local": false - }, - "supertypes": [ - { - "internalName": "java/lang/Object" - } - ], - "classAbiExcludingMembers": { - "abiValue": "{\n \"version\": 52,\n \"access\": 33,\n \"name\": \"com/example/JavaClassWithNestedClasses$InnerClass\",\n \"superName\": \"java/lang/Object\",\n \"interfaces\": [],\n \"sourceFile\": \"JavaClassWithNestedClasses.java\",\n \"innerClasses\": [\n {\n \"name\": \"com/example/JavaClassWithNestedClasses$InnerClass\",\n \"outerName\": \"com/example/JavaClassWithNestedClasses\",\n \"innerName\": \"InnerClass\",\n \"access\": 1\n },\n {\n \"name\": \"com/example/JavaClassWithNestedClasses$InnerClass$InnerClassWithinInnerClass\",\n \"outerName\": \"com/example/JavaClassWithNestedClasses$InnerClass\",\n \"innerName\": \"InnerClassWithinInnerClass\",\n \"access\": 1\n },\n {\n \"name\": \"com/example/JavaClassWithNestedClasses$InnerClass$1LocalClassWithinInnerClass\",\n \"innerName\": \"LocalClassWithinInnerClass\",\n \"access\": 0\n }\n ],\n \"fields\": [],\n \"methods\": [],\n \"api\": 589824\n}", - "name": "com/example/JavaClassWithNestedClasses$InnerClass", - "abiHash": -5172784707052054073 - }, - "fieldsAbi": [ - { - "abiValue": "{\n \"access\": 1,\n \"name\": \"publicField\",\n \"desc\": \"I\",\n \"api\": 589824\n}", - "name": "publicField", - "abiHash": -4066101678319939363 - }, - { - "abiValue": "{\n \"access\": 4112,\n \"name\": \"this$0\",\n \"desc\": \"Lcom/example/JavaClassWithNestedClasses;\",\n \"api\": 589824\n}", - "name": "this$0", - "abiHash": 3333476895593072424 - } - ], - "methodsAbi": [ - { - "abiValue": "{\n \"access\": 1,\n \"name\": \"\\u003cinit\\u003e\",\n \"desc\": \"(Lcom/example/JavaClassWithNestedClasses;)V\",\n \"exceptions\": [],\n \"visibleAnnotableParameterCount\": 0,\n \"invisibleAnnotableParameterCount\": 0,\n \"instructions\": {\n \"size\": 0\n },\n \"tryCatchBlocks\": [],\n \"maxStack\": 0,\n \"maxLocals\": 0,\n \"localVariables\": [],\n \"visited\": false,\n \"api\": 589824\n}", - "name": "\u003cinit\u003e", - "abiHash": -4959881636706217659 - }, - { - "abiValue": "{\n \"access\": 1,\n \"name\": \"publicMethod\",\n \"desc\": \"()V\",\n \"exceptions\": [],\n \"visibleAnnotableParameterCount\": 0,\n \"invisibleAnnotableParameterCount\": 0,\n \"instructions\": {\n \"size\": 0\n },\n \"tryCatchBlocks\": [],\n \"maxStack\": 0,\n \"maxLocals\": 0,\n \"localVariables\": [],\n \"visited\": false,\n \"api\": 589824\n}", - "name": "publicMethod", - "abiHash": -7202431168536137702 - }, - { - "abiValue": "{\n \"access\": 1,\n \"name\": \"someMethod\",\n \"desc\": \"()V\",\n \"exceptions\": [],\n \"visibleAnnotableParameterCount\": 0,\n \"invisibleAnnotableParameterCount\": 0,\n \"instructions\": {\n \"size\": 0\n },\n \"tryCatchBlocks\": [],\n \"maxStack\": 0,\n \"maxLocals\": 0,\n \"localVariables\": [],\n \"visited\": false,\n \"api\": 589824\n}", - "name": "someMethod", - "abiHash": 8928076277544870062 - } - ], - "className$delegate": { - "initializer": {}, - "_value": {} - }, - "withHash$delegate": { - "initializer": {}, - "_value": {} - } -} \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotTestCommon/expected-snapshot/java/com/example/SimpleJavaClass-protoBased=true.json b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotTestCommon/expected-snapshot/java/com/example/SimpleJavaClass-protoBased=true.json deleted file mode 100644 index 69659aa0388..00000000000 --- a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotTestCommon/expected-snapshot/java/com/example/SimpleJavaClass-protoBased=true.json +++ /dev/null @@ -1,1183 +0,0 @@ -{ - "serializedJavaClass": { - "proto": { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 3, - "flags_": 22, - "fqName_": 2, - "companionObjectName_": 0, - "typeParameter_": [], - "supertype_": [ - { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 16, - "argument_": [], - "nullable_": false, - "flexibleTypeCapabilitiesId_": 0, - "flexibleUpperBound_": { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 0, - "argument_": [], - "nullable_": false, - "flexibleTypeCapabilitiesId_": 0, - "flexibleUpperBoundId_": 0, - "className_": 0, - "typeParameter_": 0, - "typeParameterName_": 0, - "typeAliasName_": 0, - "outerTypeId_": 0, - "abbreviatedTypeId_": 0, - "flags_": 0, - "memoizedIsInitialized": -1, - "memoizedSerializedSize": -1, - "extensions": { - "fields": {}, - "isImmutable": false, - "hasLazyField": false - }, - "memoizedHashCode": 0 - }, - "flexibleUpperBoundId_": 0, - "className_": 5, - "typeParameter_": 0, - "typeParameterName_": 0, - "typeAliasName_": 0, - "outerType_": { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 0, - "argument_": [], - "nullable_": false, - "flexibleTypeCapabilitiesId_": 0, - "flexibleUpperBoundId_": 0, - "className_": 0, - "typeParameter_": 0, - "typeParameterName_": 0, - "typeAliasName_": 0, - "outerTypeId_": 0, - "abbreviatedTypeId_": 0, - "flags_": 0, - "memoizedIsInitialized": -1, - "memoizedSerializedSize": -1, - "extensions": { - "fields": {}, - "isImmutable": false, - "hasLazyField": false - }, - "memoizedHashCode": 0 - }, - "outerTypeId_": 0, - "abbreviatedType_": { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 0, - "argument_": [], - "nullable_": false, - "flexibleTypeCapabilitiesId_": 0, - "flexibleUpperBoundId_": 0, - "className_": 0, - "typeParameter_": 0, - "typeParameterName_": 0, - "typeAliasName_": 0, - "outerTypeId_": 0, - "abbreviatedTypeId_": 0, - "flags_": 0, - "memoizedIsInitialized": -1, - "memoizedSerializedSize": -1, - "extensions": { - "fields": {}, - "isImmutable": false, - "hasLazyField": false - }, - "memoizedHashCode": 0 - }, - "abbreviatedTypeId_": 0, - "flags_": 0, - "memoizedIsInitialized": 1, - "memoizedSerializedSize": -1, - "extensions": { - "fields": {}, - "isImmutable": true, - "hasLazyField": false - }, - "memoizedHashCode": 0 - } - ], - "supertypeId_": [], - "supertypeIdMemoizedSerializedSize": -1, - "nestedClassName_": [], - "nestedClassNameMemoizedSerializedSize": -1, - "contextReceiverType_": [], - "contextReceiverTypeId_": [], - "contextReceiverTypeIdMemoizedSerializedSize": -1, - "constructor_": [ - { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 1, - "flags_": 54, - "valueParameter_": [], - "versionRequirement_": [], - "memoizedIsInitialized": 1, - "memoizedSerializedSize": -1, - "extensions": { - "fields": {}, - "isImmutable": true, - "hasLazyField": false - }, - "memoizedHashCode": 0 - } - ], - "function_": [ - { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 13, - "flags_": 32786, - "oldFlags_": 6, - "name_": 10, - "returnType_": { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 16, - "argument_": [], - "nullable_": false, - "flexibleTypeCapabilitiesId_": 0, - "flexibleUpperBound_": { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 0, - "argument_": [], - "nullable_": false, - "flexibleTypeCapabilitiesId_": 0, - "flexibleUpperBoundId_": 0, - "className_": 0, - "typeParameter_": 0, - "typeParameterName_": 0, - "typeAliasName_": 0, - "outerTypeId_": 0, - "abbreviatedTypeId_": 0, - "flags_": 0, - "memoizedIsInitialized": -1, - "memoizedSerializedSize": -1, - "extensions": { - "fields": {}, - "isImmutable": false, - "hasLazyField": false - }, - "memoizedHashCode": 0 - }, - "flexibleUpperBoundId_": 0, - "className_": 8, - "typeParameter_": 0, - "typeParameterName_": 0, - "typeAliasName_": 0, - "outerType_": { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 0, - "argument_": [], - "nullable_": false, - "flexibleTypeCapabilitiesId_": 0, - "flexibleUpperBoundId_": 0, - "className_": 0, - "typeParameter_": 0, - "typeParameterName_": 0, - "typeAliasName_": 0, - "outerTypeId_": 0, - "abbreviatedTypeId_": 0, - "flags_": 0, - "memoizedIsInitialized": -1, - "memoizedSerializedSize": -1, - "extensions": { - "fields": {}, - "isImmutable": false, - "hasLazyField": false - }, - "memoizedHashCode": 0 - }, - "outerTypeId_": 0, - "abbreviatedType_": { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 0, - "argument_": [], - "nullable_": false, - "flexibleTypeCapabilitiesId_": 0, - "flexibleUpperBoundId_": 0, - "className_": 0, - "typeParameter_": 0, - "typeParameterName_": 0, - "typeAliasName_": 0, - "outerTypeId_": 0, - "abbreviatedTypeId_": 0, - "flags_": 0, - "memoizedIsInitialized": -1, - "memoizedSerializedSize": -1, - "extensions": { - "fields": {}, - "isImmutable": false, - "hasLazyField": false - }, - "memoizedHashCode": 0 - }, - "abbreviatedTypeId_": 0, - "flags_": 0, - "memoizedIsInitialized": 1, - "memoizedSerializedSize": -1, - "extensions": { - "fields": {}, - "isImmutable": true, - "hasLazyField": false - }, - "memoizedHashCode": 0 - }, - "returnTypeId_": 0, - "typeParameter_": [], - "receiverType_": { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 0, - "argument_": [], - "nullable_": false, - "flexibleTypeCapabilitiesId_": 0, - "flexibleUpperBoundId_": 0, - "className_": 0, - "typeParameter_": 0, - "typeParameterName_": 0, - "typeAliasName_": 0, - "outerTypeId_": 0, - "abbreviatedTypeId_": 0, - "flags_": 0, - "memoizedIsInitialized": -1, - "memoizedSerializedSize": -1, - "extensions": { - "fields": {}, - "isImmutable": false, - "hasLazyField": false - }, - "memoizedHashCode": 0 - }, - "receiverTypeId_": 0, - "contextReceiverType_": [], - "contextReceiverTypeId_": [], - "contextReceiverTypeIdMemoizedSerializedSize": -1, - "valueParameter_": [], - "typeTable_": { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 0, - "type_": [], - "firstNullable_": -1, - "memoizedIsInitialized": -1, - "memoizedSerializedSize": -1, - "memoizedHashCode": 0 - }, - "versionRequirement_": [], - "contract_": { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "effect_": [], - "memoizedIsInitialized": -1, - "memoizedSerializedSize": -1, - "memoizedHashCode": 0 - }, - "memoizedIsInitialized": 1, - "memoizedSerializedSize": -1, - "extensions": { - "fields": {}, - "isImmutable": true, - "hasLazyField": false - }, - "memoizedHashCode": 0 - }, - { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 13, - "flags_": 32790, - "oldFlags_": 6, - "name_": 12, - "returnType_": { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 16, - "argument_": [], - "nullable_": false, - "flexibleTypeCapabilitiesId_": 0, - "flexibleUpperBound_": { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 0, - "argument_": [], - "nullable_": false, - "flexibleTypeCapabilitiesId_": 0, - "flexibleUpperBoundId_": 0, - "className_": 0, - "typeParameter_": 0, - "typeParameterName_": 0, - "typeAliasName_": 0, - "outerTypeId_": 0, - "abbreviatedTypeId_": 0, - "flags_": 0, - "memoizedIsInitialized": -1, - "memoizedSerializedSize": -1, - "extensions": { - "fields": {}, - "isImmutable": false, - "hasLazyField": false - }, - "memoizedHashCode": 0 - }, - "flexibleUpperBoundId_": 0, - "className_": 8, - "typeParameter_": 0, - "typeParameterName_": 0, - "typeAliasName_": 0, - "outerType_": { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 0, - "argument_": [], - "nullable_": false, - "flexibleTypeCapabilitiesId_": 0, - "flexibleUpperBoundId_": 0, - "className_": 0, - "typeParameter_": 0, - "typeParameterName_": 0, - "typeAliasName_": 0, - "outerTypeId_": 0, - "abbreviatedTypeId_": 0, - "flags_": 0, - "memoizedIsInitialized": -1, - "memoizedSerializedSize": -1, - "extensions": { - "fields": {}, - "isImmutable": false, - "hasLazyField": false - }, - "memoizedHashCode": 0 - }, - "outerTypeId_": 0, - "abbreviatedType_": { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 0, - "argument_": [], - "nullable_": false, - "flexibleTypeCapabilitiesId_": 0, - "flexibleUpperBoundId_": 0, - "className_": 0, - "typeParameter_": 0, - "typeParameterName_": 0, - "typeAliasName_": 0, - "outerTypeId_": 0, - "abbreviatedTypeId_": 0, - "flags_": 0, - "memoizedIsInitialized": -1, - "memoizedSerializedSize": -1, - "extensions": { - "fields": {}, - "isImmutable": false, - "hasLazyField": false - }, - "memoizedHashCode": 0 - }, - "abbreviatedTypeId_": 0, - "flags_": 0, - "memoizedIsInitialized": 1, - "memoizedSerializedSize": -1, - "extensions": { - "fields": {}, - "isImmutable": true, - "hasLazyField": false - }, - "memoizedHashCode": 0 - }, - "returnTypeId_": 0, - "typeParameter_": [], - "receiverType_": { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 0, - "argument_": [], - "nullable_": false, - "flexibleTypeCapabilitiesId_": 0, - "flexibleUpperBoundId_": 0, - "className_": 0, - "typeParameter_": 0, - "typeParameterName_": 0, - "typeAliasName_": 0, - "outerTypeId_": 0, - "abbreviatedTypeId_": 0, - "flags_": 0, - "memoizedIsInitialized": -1, - "memoizedSerializedSize": -1, - "extensions": { - "fields": {}, - "isImmutable": false, - "hasLazyField": false - }, - "memoizedHashCode": 0 - }, - "receiverTypeId_": 0, - "contextReceiverType_": [], - "contextReceiverTypeId_": [], - "contextReceiverTypeIdMemoizedSerializedSize": -1, - "valueParameter_": [], - "typeTable_": { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 0, - "type_": [], - "firstNullable_": -1, - "memoizedIsInitialized": -1, - "memoizedSerializedSize": -1, - "memoizedHashCode": 0 - }, - "versionRequirement_": [], - "contract_": { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "effect_": [], - "memoizedIsInitialized": -1, - "memoizedSerializedSize": -1, - "memoizedHashCode": 0 - }, - "memoizedIsInitialized": 1, - "memoizedSerializedSize": -1, - "extensions": { - "fields": {}, - "isImmutable": true, - "hasLazyField": false - }, - "memoizedHashCode": 0 - } - ], - "property_": [ - { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 13, - "flags_": 258, - "oldFlags_": 2054, - "name_": 6, - "returnType_": { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 16, - "argument_": [], - "nullable_": false, - "flexibleTypeCapabilitiesId_": 0, - "flexibleUpperBound_": { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 0, - "argument_": [], - "nullable_": false, - "flexibleTypeCapabilitiesId_": 0, - "flexibleUpperBoundId_": 0, - "className_": 0, - "typeParameter_": 0, - "typeParameterName_": 0, - "typeAliasName_": 0, - "outerTypeId_": 0, - "abbreviatedTypeId_": 0, - "flags_": 0, - "memoizedIsInitialized": -1, - "memoizedSerializedSize": -1, - "extensions": { - "fields": {}, - "isImmutable": false, - "hasLazyField": false - }, - "memoizedHashCode": 0 - }, - "flexibleUpperBoundId_": 0, - "className_": 7, - "typeParameter_": 0, - "typeParameterName_": 0, - "typeAliasName_": 0, - "outerType_": { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 0, - "argument_": [], - "nullable_": false, - "flexibleTypeCapabilitiesId_": 0, - "flexibleUpperBoundId_": 0, - "className_": 0, - "typeParameter_": 0, - "typeParameterName_": 0, - "typeAliasName_": 0, - "outerTypeId_": 0, - "abbreviatedTypeId_": 0, - "flags_": 0, - "memoizedIsInitialized": -1, - "memoizedSerializedSize": -1, - "extensions": { - "fields": {}, - "isImmutable": false, - "hasLazyField": false - }, - "memoizedHashCode": 0 - }, - "outerTypeId_": 0, - "abbreviatedType_": { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 0, - "argument_": [], - "nullable_": false, - "flexibleTypeCapabilitiesId_": 0, - "flexibleUpperBoundId_": 0, - "className_": 0, - "typeParameter_": 0, - "typeParameterName_": 0, - "typeAliasName_": 0, - "outerTypeId_": 0, - "abbreviatedTypeId_": 0, - "flags_": 0, - "memoizedIsInitialized": -1, - "memoizedSerializedSize": -1, - "extensions": { - "fields": {}, - "isImmutable": false, - "hasLazyField": false - }, - "memoizedHashCode": 0 - }, - "abbreviatedTypeId_": 0, - "flags_": 0, - "memoizedIsInitialized": 1, - "memoizedSerializedSize": -1, - "extensions": { - "fields": {}, - "isImmutable": true, - "hasLazyField": false - }, - "memoizedHashCode": 0 - }, - "returnTypeId_": 0, - "typeParameter_": [], - "receiverType_": { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 0, - "argument_": [], - "nullable_": false, - "flexibleTypeCapabilitiesId_": 0, - "flexibleUpperBoundId_": 0, - "className_": 0, - "typeParameter_": 0, - "typeParameterName_": 0, - "typeAliasName_": 0, - "outerTypeId_": 0, - "abbreviatedTypeId_": 0, - "flags_": 0, - "memoizedIsInitialized": -1, - "memoizedSerializedSize": -1, - "extensions": { - "fields": {}, - "isImmutable": false, - "hasLazyField": false - }, - "memoizedHashCode": 0 - }, - "receiverTypeId_": 0, - "contextReceiverType_": [], - "contextReceiverTypeId_": [], - "contextReceiverTypeIdMemoizedSerializedSize": -1, - "setterValueParameter_": { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 0, - "flags_": 0, - "name_": 0, - "type_": { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 0, - "argument_": [], - "nullable_": false, - "flexibleTypeCapabilitiesId_": 0, - "flexibleUpperBoundId_": 0, - "className_": 0, - "typeParameter_": 0, - "typeParameterName_": 0, - "typeAliasName_": 0, - "outerTypeId_": 0, - "abbreviatedTypeId_": 0, - "flags_": 0, - "memoizedIsInitialized": -1, - "memoizedSerializedSize": -1, - "extensions": { - "fields": {}, - "isImmutable": false, - "hasLazyField": false - }, - "memoizedHashCode": 0 - }, - "typeId_": 0, - "varargElementType_": { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 0, - "argument_": [], - "nullable_": false, - "flexibleTypeCapabilitiesId_": 0, - "flexibleUpperBoundId_": 0, - "className_": 0, - "typeParameter_": 0, - "typeParameterName_": 0, - "typeAliasName_": 0, - "outerTypeId_": 0, - "abbreviatedTypeId_": 0, - "flags_": 0, - "memoizedIsInitialized": -1, - "memoizedSerializedSize": -1, - "extensions": { - "fields": {}, - "isImmutable": false, - "hasLazyField": false - }, - "memoizedHashCode": 0 - }, - "varargElementTypeId_": 0, - "memoizedIsInitialized": -1, - "memoizedSerializedSize": -1, - "extensions": { - "fields": {}, - "isImmutable": false, - "hasLazyField": false - }, - "memoizedHashCode": 0 - }, - "getterFlags_": 0, - "setterFlags_": 0, - "versionRequirement_": [], - "memoizedIsInitialized": 1, - "memoizedSerializedSize": -1, - "extensions": { - "fields": {}, - "isImmutable": true, - "hasLazyField": false - }, - "memoizedHashCode": 0 - }, - { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 13, - "flags_": 262, - "oldFlags_": 2054, - "name_": 9, - "returnType_": { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 16, - "argument_": [], - "nullable_": false, - "flexibleTypeCapabilitiesId_": 0, - "flexibleUpperBound_": { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 0, - "argument_": [], - "nullable_": false, - "flexibleTypeCapabilitiesId_": 0, - "flexibleUpperBoundId_": 0, - "className_": 0, - "typeParameter_": 0, - "typeParameterName_": 0, - "typeAliasName_": 0, - "outerTypeId_": 0, - "abbreviatedTypeId_": 0, - "flags_": 0, - "memoizedIsInitialized": -1, - "memoizedSerializedSize": -1, - "extensions": { - "fields": {}, - "isImmutable": false, - "hasLazyField": false - }, - "memoizedHashCode": 0 - }, - "flexibleUpperBoundId_": 0, - "className_": 7, - "typeParameter_": 0, - "typeParameterName_": 0, - "typeAliasName_": 0, - "outerType_": { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 0, - "argument_": [], - "nullable_": false, - "flexibleTypeCapabilitiesId_": 0, - "flexibleUpperBoundId_": 0, - "className_": 0, - "typeParameter_": 0, - "typeParameterName_": 0, - "typeAliasName_": 0, - "outerTypeId_": 0, - "abbreviatedTypeId_": 0, - "flags_": 0, - "memoizedIsInitialized": -1, - "memoizedSerializedSize": -1, - "extensions": { - "fields": {}, - "isImmutable": false, - "hasLazyField": false - }, - "memoizedHashCode": 0 - }, - "outerTypeId_": 0, - "abbreviatedType_": { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 0, - "argument_": [], - "nullable_": false, - "flexibleTypeCapabilitiesId_": 0, - "flexibleUpperBoundId_": 0, - "className_": 0, - "typeParameter_": 0, - "typeParameterName_": 0, - "typeAliasName_": 0, - "outerTypeId_": 0, - "abbreviatedTypeId_": 0, - "flags_": 0, - "memoizedIsInitialized": -1, - "memoizedSerializedSize": -1, - "extensions": { - "fields": {}, - "isImmutable": false, - "hasLazyField": false - }, - "memoizedHashCode": 0 - }, - "abbreviatedTypeId_": 0, - "flags_": 0, - "memoizedIsInitialized": 1, - "memoizedSerializedSize": -1, - "extensions": { - "fields": {}, - "isImmutable": true, - "hasLazyField": false - }, - "memoizedHashCode": 0 - }, - "returnTypeId_": 0, - "typeParameter_": [], - "receiverType_": { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 0, - "argument_": [], - "nullable_": false, - "flexibleTypeCapabilitiesId_": 0, - "flexibleUpperBoundId_": 0, - "className_": 0, - "typeParameter_": 0, - "typeParameterName_": 0, - "typeAliasName_": 0, - "outerTypeId_": 0, - "abbreviatedTypeId_": 0, - "flags_": 0, - "memoizedIsInitialized": -1, - "memoizedSerializedSize": -1, - "extensions": { - "fields": {}, - "isImmutable": false, - "hasLazyField": false - }, - "memoizedHashCode": 0 - }, - "receiverTypeId_": 0, - "contextReceiverType_": [], - "contextReceiverTypeId_": [], - "contextReceiverTypeIdMemoizedSerializedSize": -1, - "setterValueParameter_": { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 0, - "flags_": 0, - "name_": 0, - "type_": { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 0, - "argument_": [], - "nullable_": false, - "flexibleTypeCapabilitiesId_": 0, - "flexibleUpperBoundId_": 0, - "className_": 0, - "typeParameter_": 0, - "typeParameterName_": 0, - "typeAliasName_": 0, - "outerTypeId_": 0, - "abbreviatedTypeId_": 0, - "flags_": 0, - "memoizedIsInitialized": -1, - "memoizedSerializedSize": -1, - "extensions": { - "fields": {}, - "isImmutable": false, - "hasLazyField": false - }, - "memoizedHashCode": 0 - }, - "typeId_": 0, - "varargElementType_": { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 0, - "argument_": [], - "nullable_": false, - "flexibleTypeCapabilitiesId_": 0, - "flexibleUpperBoundId_": 0, - "className_": 0, - "typeParameter_": 0, - "typeParameterName_": 0, - "typeAliasName_": 0, - "outerTypeId_": 0, - "abbreviatedTypeId_": 0, - "flags_": 0, - "memoizedIsInitialized": -1, - "memoizedSerializedSize": -1, - "extensions": { - "fields": {}, - "isImmutable": false, - "hasLazyField": false - }, - "memoizedHashCode": 0 - }, - "varargElementTypeId_": 0, - "memoizedIsInitialized": -1, - "memoizedSerializedSize": -1, - "extensions": { - "fields": {}, - "isImmutable": false, - "hasLazyField": false - }, - "memoizedHashCode": 0 - }, - "getterFlags_": 0, - "setterFlags_": 0, - "versionRequirement_": [], - "memoizedIsInitialized": 1, - "memoizedSerializedSize": -1, - "extensions": { - "fields": {}, - "isImmutable": true, - "hasLazyField": false - }, - "memoizedHashCode": 0 - } - ], - "typeAlias_": [], - "enumEntry_": [], - "sealedSubclassFqName_": [], - "sealedSubclassFqNameMemoizedSerializedSize": -1, - "inlineClassUnderlyingPropertyName_": 0, - "inlineClassUnderlyingType_": { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 0, - "argument_": [], - "nullable_": false, - "flexibleTypeCapabilitiesId_": 0, - "flexibleUpperBoundId_": 0, - "className_": 0, - "typeParameter_": 0, - "typeParameterName_": 0, - "typeAliasName_": 0, - "outerTypeId_": 0, - "abbreviatedTypeId_": 0, - "flags_": 0, - "memoizedIsInitialized": -1, - "memoizedSerializedSize": -1, - "extensions": { - "fields": {}, - "isImmutable": false, - "hasLazyField": false - }, - "memoizedHashCode": 0 - }, - "inlineClassUnderlyingTypeId_": 0, - "typeTable_": { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 0, - "type_": [], - "firstNullable_": -1, - "memoizedIsInitialized": -1, - "memoizedSerializedSize": -1, - "memoizedHashCode": 0 - }, - "versionRequirement_": [], - "versionRequirementTable_": { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "requirement_": [], - "memoizedIsInitialized": -1, - "memoizedSerializedSize": -1, - "memoizedHashCode": 0 - }, - "memoizedIsInitialized": 1, - "memoizedSerializedSize": -1, - "extensions": { - "fields": {}, - "isImmutable": true, - "hasLazyField": false - }, - "memoizedHashCode": 0 - }, - "stringTable": { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "string_": [ - "com", - "example", - "SimpleJavaClass", - "java", - "lang", - "Object", - "privateField", - "kotlin", - "Int", - "publicField", - "privateMethod", - "Unit", - "publicMethod" - ], - "memoizedIsInitialized": 1, - "memoizedSerializedSize": -1, - "memoizedHashCode": 0 - }, - "qualifiedNameTable": { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "qualifiedName_": [ - { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 2, - "parentQualifiedName_": -1, - "shortName_": 0, - "kind_": "PACKAGE", - "memoizedIsInitialized": 1, - "memoizedSerializedSize": -1, - "memoizedHashCode": 0 - }, - { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 3, - "parentQualifiedName_": 0, - "shortName_": 1, - "kind_": "PACKAGE", - "memoizedIsInitialized": 1, - "memoizedSerializedSize": -1, - "memoizedHashCode": 0 - }, - { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 7, - "parentQualifiedName_": 1, - "shortName_": 2, - "kind_": "CLASS", - "memoizedIsInitialized": 1, - "memoizedSerializedSize": -1, - "memoizedHashCode": 0 - }, - { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 2, - "parentQualifiedName_": -1, - "shortName_": 3, - "kind_": "PACKAGE", - "memoizedIsInitialized": 1, - "memoizedSerializedSize": -1, - "memoizedHashCode": 0 - }, - { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 3, - "parentQualifiedName_": 3, - "shortName_": 4, - "kind_": "PACKAGE", - "memoizedIsInitialized": 1, - "memoizedSerializedSize": -1, - "memoizedHashCode": 0 - }, - { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 7, - "parentQualifiedName_": 4, - "shortName_": 5, - "kind_": "CLASS", - "memoizedIsInitialized": 1, - "memoizedSerializedSize": -1, - "memoizedHashCode": 0 - }, - { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 2, - "parentQualifiedName_": -1, - "shortName_": 7, - "kind_": "PACKAGE", - "memoizedIsInitialized": 1, - "memoizedSerializedSize": -1, - "memoizedHashCode": 0 - }, - { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 7, - "parentQualifiedName_": 6, - "shortName_": 8, - "kind_": "CLASS", - "memoizedIsInitialized": 1, - "memoizedSerializedSize": -1, - "memoizedHashCode": 0 - }, - { - "unknownFields": { - "bytes": [], - "hash": 0 - }, - "bitField0_": 7, - "parentQualifiedName_": 6, - "shortName_": 11, - "kind_": "CLASS", - "memoizedIsInitialized": 1, - "memoizedSerializedSize": -1, - "memoizedHashCode": 0 - } - ], - "memoizedIsInitialized": 1, - "memoizedSerializedSize": -1, - "memoizedHashCode": 0 - } - }, - "withHash$delegate": { - "initializer": {}, - "_value": {} - } -} \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotTestCommon/src/java/com/example/JavaClassWithNestedClasses.java b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotTestCommon/src/java/com/example/JavaClassWithNestedClasses.java deleted file mode 100644 index cc85697398b..00000000000 --- a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotTestCommon/src/java/com/example/JavaClassWithNestedClasses.java +++ /dev/null @@ -1,55 +0,0 @@ -package com.example; - -public class JavaClassWithNestedClasses { - - public class InnerClass { - - public int publicField = 0; - - private int privateField = 0; - - public void publicMethod() { - System.out.println("I'm in a public method"); - } - - private void privateMethod() { - System.out.println("I'm in a private method"); - } - - public class InnerClassWithinInnerClass { - } - - public void someMethod() { - - class LocalClassWithinInnerClass { - } - } - } - - public static class StaticNestedClass { - } - - public void someMethod() { - - class LocalClass { - - class InnerClassWithinLocalClass { - } - } - - Runnable objectOfAnonymousLocalClass = new Runnable() { - @Override - public void run() { - } - }; - } - - private Runnable objectOfAnonymousNonLocalClass = new Runnable() { - @Override - public void run() { - } - }; - - public class InnerClassWith$Sign { - } -} diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotTestCommon/src/java/com/example/SimpleJavaClass.java b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotTestCommon/src/java/com/example/SimpleJavaClass.java deleted file mode 100644 index 1235f01914c..00000000000 --- a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotTestCommon/src/java/com/example/SimpleJavaClass.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.example; - -public class SimpleJavaClass { - - public int publicField = 0; - - private int privateField = 0; - - public void publicMethod() { - System.out.println("I'm in a public method"); - } - - private void privateMethod() { - System.out.println("I'm in a private method"); - } -} diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotTestCommon/src/kotlin/com/example/SimpleKotlinClass.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotTestCommon/src/kotlin/com/example/SimpleKotlinClass.kt deleted file mode 100644 index b9682a10c8a..00000000000 --- a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotTestCommon/src/kotlin/com/example/SimpleKotlinClass.kt +++ /dev/null @@ -1,16 +0,0 @@ -package com.example - -class SimpleKotlinClass { - - val publicProperty: Int = 0 - - private val privateProperty: Int = 0 - - fun publicFunction() { - println("I'm in a public function") - } - - private fun privateFunction() { - println("I'm in a private function") - } -} diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest/classes-changed/kotlin/abi-change/com/example/SimpleClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest/classes-changed/kotlin/abi-change/com/example/SimpleClass.class new file mode 100644 index 00000000000..844af60331e Binary files /dev/null and b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest/classes-changed/kotlin/abi-change/com/example/SimpleClass.class differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest/classes-changed/kotlin/non-abi-change/com/example/SimpleClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest/classes-changed/kotlin/non-abi-change/com/example/SimpleClass.class new file mode 100644 index 00000000000..a535d512244 Binary files /dev/null and b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest/classes-changed/kotlin/non-abi-change/com/example/SimpleClass.class differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest/classes-changed/kotllin/abi-change/com/example/SimpleClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest/classes-changed/kotllin/abi-change/com/example/SimpleClass.class new file mode 100644 index 00000000000..844af60331e Binary files /dev/null and b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest/classes-changed/kotllin/abi-change/com/example/SimpleClass.class differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest/classes/kotlin/com/example/SimpleClass.class b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest/classes/kotlin/com/example/SimpleClass.class new file mode 100644 index 00000000000..d8e3a73804d Binary files /dev/null and b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest/classes/kotlin/com/example/SimpleClass.class differ diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotTestCommon/expected-snapshot/java/com/example/SimpleJavaClass-protoBased=false.json b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest/expected-snapshot/java/com/example/SimpleClass.json similarity index 69% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotTestCommon/expected-snapshot/java/com/example/SimpleJavaClass-protoBased=false.json rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest/expected-snapshot/java/com/example/SimpleClass.json index 2681c70bade..3f0445a1c64 100644 --- a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotTestCommon/expected-snapshot/java/com/example/SimpleJavaClass-protoBased=false.json +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest/expected-snapshot/java/com/example/SimpleClass.json @@ -7,7 +7,7 @@ }, "relativeClassName": { "fqName": { - "fqName": "SimpleJavaClass" + "fqName": "SimpleClass" } }, "local": false @@ -18,9 +18,9 @@ } ], "classAbiExcludingMembers": { - "abiValue": "{\n \"version\": 52,\n \"access\": 33,\n \"name\": \"com/example/SimpleJavaClass\",\n \"superName\": \"java/lang/Object\",\n \"interfaces\": [],\n \"sourceFile\": \"SimpleJavaClass.java\",\n \"innerClasses\": [],\n \"fields\": [],\n \"methods\": [],\n \"api\": 589824\n}", - "name": "com/example/SimpleJavaClass", - "abiHash": 4897366397927258364 + "abiValue": "{\n \"version\": 52,\n \"access\": 32,\n \"name\": \"com/example/SimpleClass\",\n \"superName\": \"java/lang/Object\",\n \"interfaces\": [],\n \"sourceFile\": \"SimpleClass.java\",\n \"innerClasses\": [],\n \"fields\": [],\n \"methods\": [],\n \"api\": 589824\n}", + "name": "com/example/SimpleClass", + "abiHash": 5093067435262353961 }, "fieldsAbi": [ { @@ -31,14 +31,14 @@ ], "methodsAbi": [ { - "abiValue": "{\n \"access\": 1,\n \"name\": \"\\u003cinit\\u003e\",\n \"desc\": \"()V\",\n \"exceptions\": [],\n \"visibleAnnotableParameterCount\": 0,\n \"invisibleAnnotableParameterCount\": 0,\n \"instructions\": {\n \"size\": 0\n },\n \"tryCatchBlocks\": [],\n \"maxStack\": 0,\n \"maxLocals\": 0,\n \"localVariables\": [],\n \"visited\": false,\n \"api\": 589824\n}", + "abiValue": "{\n \"access\": 0,\n \"name\": \"\\u003cinit\\u003e\",\n \"desc\": \"()V\",\n \"exceptions\": [],\n \"visibleAnnotableParameterCount\": 0,\n \"invisibleAnnotableParameterCount\": 0,\n \"instructions\": {\n \"size\": 0\n },\n \"tryCatchBlocks\": [],\n \"maxStack\": 0,\n \"maxLocals\": 0,\n \"localVariables\": [],\n \"visited\": false,\n \"api\": 589824\n}", "name": "\u003cinit\u003e", - "abiHash": 5725188035643409224 + "abiHash": -8222317811013429324 }, { - "abiValue": "{\n \"access\": 1,\n \"name\": \"publicMethod\",\n \"desc\": \"()V\",\n \"exceptions\": [],\n \"visibleAnnotableParameterCount\": 0,\n \"invisibleAnnotableParameterCount\": 0,\n \"instructions\": {\n \"size\": 0\n },\n \"tryCatchBlocks\": [],\n \"maxStack\": 0,\n \"maxLocals\": 0,\n \"localVariables\": [],\n \"visited\": false,\n \"api\": 589824\n}", + "abiValue": "{\n \"access\": 1,\n \"name\": \"publicMethod\",\n \"desc\": \"()I\",\n \"exceptions\": [],\n \"visibleAnnotableParameterCount\": 0,\n \"invisibleAnnotableParameterCount\": 0,\n \"instructions\": {\n \"size\": 0\n },\n \"tryCatchBlocks\": [],\n \"maxStack\": 0,\n \"maxLocals\": 0,\n \"localVariables\": [],\n \"visited\": false,\n \"api\": 589824\n}", "name": "publicMethod", - "abiHash": -7202431168536137702 + "abiHash": -4555436938653125191 } ], "className$delegate": { diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotTestCommon/expected-snapshot/kotlin/com/example/SimpleKotlinClass.json b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest/expected-snapshot/kotlin/com/example/SimpleClass.json similarity index 60% rename from compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotTestCommon/expected-snapshot/kotlin/com/example/SimpleKotlinClass.json rename to compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest/expected-snapshot/kotlin/com/example/SimpleClass.json index 3196d838c2f..5f8fbbf4728 100644 --- a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotTestCommon/expected-snapshot/kotlin/com/example/SimpleKotlinClass.json +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest/expected-snapshot/kotlin/com/example/SimpleClass.json @@ -8,17 +8,17 @@ }, "relativeClassName": { "fqName": { - "fqName": "SimpleKotlinClass" + "fqName": "SimpleClass" } }, "local": false }, "classKind": "CLASS", "classHeaderData": [ - "\u0000\u001a\n\u0002\u0018\u0002\n\u0002\u0010\u0000\n\u0002\b\u0002\n\u0002\u0010\b\n\u0002\b\u0004\n\u0002\u0010\u0002\n\u0000\u0018\u00002\u00020\u0001B\u0005¢\u0006\u0002\u0010\u0002J\b\u0010\b\u001a\u00020\tH\u0002J\u0006\u0010\n\u001a\u00020\tR\u000e\u0010\u0003\u001a\u00020\u0004X‚D¢\u0006\u0002\n\u0000R\u0014\u0010\u0005\u001a\u00020\u0004X†D¢\u0006\b\n\u0000\u001a\u0004\b\u0006\u0010\u0007" + "\u0000\u0014\n\u0002\u0018\u0002\n\u0002\u0010\u0000\n\u0002\b\u0002\n\u0002\u0010\b\n\u0002\b\u0005\u0018\u00002\u00020\u0001B\u0005¢\u0006\u0002\u0010\u0002J\b\u0010\b\u001a\u00020\u0004H\u0002J\u0006\u0010\t\u001a\u00020\u0004R\u000e\u0010\u0003\u001a\u00020\u0004X‚D¢\u0006\u0002\n\u0000R\u0014\u0010\u0005\u001a\u00020\u0004X†D¢\u0006\b\n\u0000\u001a\u0004\b\u0006\u0010\u0007" ], "classHeaderStrings": [ - "Lcom/example/SimpleKotlinClass;", + "Lcom/example/SimpleClass;", "", "()V", "privateProperty", @@ -27,7 +27,6 @@ "getPublicProperty", "()I", "privateFunction", - "", "publicFunction" ], "constantsMap": {}, diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest/src-changed/java/abi-change/com/example/SimpleClass.java b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest/src-changed/java/abi-change/com/example/SimpleClass.java new file mode 100644 index 00000000000..557b3f28e3d --- /dev/null +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest/src-changed/java/abi-change/com/example/SimpleClass.java @@ -0,0 +1,16 @@ +package com.example; + +class SimpleClass { + + public long publicField = 0; + + private long privateField = 0; + + public long publicMethod() { + return 0; + } + + private long privateMethod() { + return 0; + } +} \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest/src-changed/java/non-abi-change/com/example/SimpleClass.java b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest/src-changed/java/non-abi-change/com/example/SimpleClass.java new file mode 100644 index 00000000000..96c106d5396 --- /dev/null +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest/src-changed/java/non-abi-change/com/example/SimpleClass.java @@ -0,0 +1,16 @@ +package com.example; + +class SimpleClass { + + public int publicField = 1000; + + private int privateField = 1000; + + public int publicMethod() { + return 1000; + } + + private int privateMethod() { + return 1000; + } +} \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest/src-changed/kotlin/abi-change/com/example/SimpleClass.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest/src-changed/kotlin/abi-change/com/example/SimpleClass.kt new file mode 100644 index 00000000000..24076a1e709 --- /dev/null +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest/src-changed/kotlin/abi-change/com/example/SimpleClass.kt @@ -0,0 +1,12 @@ +package com.example + +class SimpleClass { + + val publicProperty: Long = 0 + + private val privateProperty: Long = 0 + + fun publicFunction(): Long = 0 + + private fun privateFunction(): Long = 0 +} diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest/src-changed/kotlin/non-abi-change/com/example/SimpleClass.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest/src-changed/kotlin/non-abi-change/com/example/SimpleClass.kt new file mode 100644 index 00000000000..ead84628da0 --- /dev/null +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest/src-changed/kotlin/non-abi-change/com/example/SimpleClass.kt @@ -0,0 +1,12 @@ +package com.example + +class SimpleClass { + + val publicProperty: Int = 1000 + + private val privateProperty: Int = 1000 + + fun publicFunction(): Int = 1000 + + private fun privateFunction(): Int = 1000 +} diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest/src/java/com/example/SimpleClass.java b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest/src/java/com/example/SimpleClass.java new file mode 100644 index 00000000000..9d0800fdb4e --- /dev/null +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest/src/java/com/example/SimpleClass.java @@ -0,0 +1,16 @@ +package com.example; + +class SimpleClass { + + public int publicField = 0; + + private int privateField = 0; + + public int publicMethod() { + return 0; + } + + private int privateMethod() { + return 0; + } +} \ No newline at end of file diff --git a/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest/src/kotlin/com/example/SimpleClass.kt b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest/src/kotlin/com/example/SimpleClass.kt new file mode 100644 index 00000000000..8148d685fa2 --- /dev/null +++ b/compiler/incremental-compilation-impl/testData/org/jetbrains/kotlin/incremental/classpathDiff/ClasspathSnapshotterTest/src/kotlin/com/example/SimpleClass.kt @@ -0,0 +1,12 @@ +package com.example + +class SimpleClass { + + val publicProperty: Int = 0 + + private val privateProperty: Int = 0 + + fun publicFunction(): Int = 0 + + private fun privateFunction(): Int = 0 +} diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/IncrementalJavaChangeIT.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/IncrementalJavaChangeIT.kt index 33fe765c9cd..f044a62eb6a 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/IncrementalJavaChangeIT.kt +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/IncrementalJavaChangeIT.kt @@ -55,18 +55,6 @@ class IncrementalJavaChangeClasspathSnapshotIT : IncrementalJavaChangeDefaultIT( } ) } - - @Test - fun testAddingInnerClass() { - doTest( - "A.kt", - { content: String -> content.substringBeforeLast("}") + " class InnerClass }" }, - assertResults = { - assertTasksExecuted(":lib:compileKotlin", ":app:compileKotlin") - assertCompiledKotlinFiles(project.projectDir.getFilesByNames("AAA.kt", "AA.kt", "BB.kt", "A.kt", "B.kt")) - } - ) - } } class IncrementalJavaChangePreciseIT : IncrementalCompilationJavaChangesBase(usePreciseJavaTracking = true) {