diff --git a/jps/jps-plugin/src/org/jetbrains/kotlin/jps/incremental/IncrementalCacheImpl.kt b/jps/jps-plugin/src/org/jetbrains/kotlin/jps/incremental/IncrementalCacheImpl.kt index d5d72746ecd..bcebe353b7a 100644 --- a/jps/jps-plugin/src/org/jetbrains/kotlin/jps/incremental/IncrementalCacheImpl.kt +++ b/jps/jps-plugin/src/org/jetbrains/kotlin/jps/incremental/IncrementalCacheImpl.kt @@ -366,8 +366,8 @@ public class IncrementalCacheImpl( ClassReader(bytes).accept(object : ClassVisitor(Opcodes.ASM5) { override fun visitField(access: Int, name: String, desc: String, signature: String?, value: Any?): FieldVisitor? { - val staticFinal = Opcodes.ACC_STATIC or Opcodes.ACC_FINAL - if (value != null && access and staticFinal == staticFinal) { + 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) { result[name] = value } return null diff --git a/jps/jps-plugin/test/org/jetbrains/kotlin/jps/build/IncrementalJpsTestGenerated.java b/jps/jps-plugin/test/org/jetbrains/kotlin/jps/build/IncrementalJpsTestGenerated.java index 53efe232f9d..c7cd780f232 100644 --- a/jps/jps-plugin/test/org/jetbrains/kotlin/jps/build/IncrementalJpsTestGenerated.java +++ b/jps/jps-plugin/test/org/jetbrains/kotlin/jps/build/IncrementalJpsTestGenerated.java @@ -485,6 +485,12 @@ public class IncrementalJpsTestGenerated extends AbstractIncrementalJpsTest { doTest(fileName); } + @TestMetadata("privateConstantsChanged") + public void testPrivateConstantsChanged() throws Exception { + String fileName = JetTestUtils.navigationMetadata("jps-plugin/testData/incremental/pureKotlin/privateConstantsChanged/"); + doTest(fileName); + } + @TestMetadata("privateMethodAdded") public void testPrivateMethodAdded() throws Exception { String fileName = JetTestUtils.navigationMetadata("jps-plugin/testData/incremental/pureKotlin/privateMethodAdded/"); diff --git a/jps/jps-plugin/testData/incremental/pureKotlin/privateConstantsChanged/build.log b/jps/jps-plugin/testData/incremental/pureKotlin/privateConstantsChanged/build.log new file mode 100644 index 00000000000..453becd76c1 --- /dev/null +++ b/jps/jps-plugin/testData/incremental/pureKotlin/privateConstantsChanged/build.log @@ -0,0 +1,11 @@ +Cleaning output files: +out/production/module/META-INF/module.kotlin_module +out/production/module/test/ConstKt.class +out/production/module/test/Klass$Companion.class +out/production/module/test/Klass.class +out/production/module/test/Obj.class +out/production/module/test/TestPackage.class +End of files +Compiling files: +src/const.kt +End of files \ No newline at end of file diff --git a/jps/jps-plugin/testData/incremental/pureKotlin/privateConstantsChanged/const.kt b/jps/jps-plugin/testData/incremental/pureKotlin/privateConstantsChanged/const.kt new file mode 100644 index 00000000000..7f64be02734 --- /dev/null +++ b/jps/jps-plugin/testData/incremental/pureKotlin/privateConstantsChanged/const.kt @@ -0,0 +1,15 @@ +package test + +val CONST = "foo" + +class Klass { + companion object { + private val CHANGED = "old" + public val UNCHANGED = 100 + } +} + +object Obj : Any() { + private val CHANGED = "old:Obj" + public val UNCHANGED = 200 +} diff --git a/jps/jps-plugin/testData/incremental/pureKotlin/privateConstantsChanged/const.kt.new b/jps/jps-plugin/testData/incremental/pureKotlin/privateConstantsChanged/const.kt.new new file mode 100644 index 00000000000..569acca03d0 --- /dev/null +++ b/jps/jps-plugin/testData/incremental/pureKotlin/privateConstantsChanged/const.kt.new @@ -0,0 +1,15 @@ +package test + +val CONST = "foo" + +class Klass { + companion object { + private val CHANGED = "new" + public val UNCHANGED = 100 + } +} + +object Obj : Any() { + private val CHANGED = "new:Obj" + public val UNCHANGED = 200 +} diff --git a/jps/jps-plugin/testData/incremental/pureKotlin/privateConstantsChanged/usage.kt b/jps/jps-plugin/testData/incremental/pureKotlin/privateConstantsChanged/usage.kt new file mode 100644 index 00000000000..0804182a1b5 --- /dev/null +++ b/jps/jps-plugin/testData/incremental/pureKotlin/privateConstantsChanged/usage.kt @@ -0,0 +1,4 @@ +package test + +@Deprecated(CONST + Klass.UNCHANGED) +class Usage