Remove obsolete logic to IS_BUILT_WITH_ASM6

This commit is contained in:
Mikhael Bogdanov
2019-12-11 11:20:56 +01:00
parent a92f58b1ac
commit 8225c5a9ce
4 changed files with 9 additions and 50 deletions
@@ -221,22 +221,9 @@ private fun generateParameterAnnotations(
) {
val iterator = irFunction.valueParameters.iterator()
val kotlinParameterTypes = jvmSignature.valueParameters
var syntheticParameterCount = 0
kotlinParameterTypes.forEachIndexed { i, parameterSignature ->
val kind = parameterSignature.kind
if (kind.isSkippedInGenericSignature) {
if (AsmUtil.IS_BUILT_WITH_ASM6) {
// This is needed to avoid RuntimeInvisibleParameterAnnotations error in javac:
// see MethodWriter.visitParameterAnnotation()
mv.visitParameterAnnotation(i, "Ljava/lang/Synthetic;", true)?.visitEnd()
} else {
syntheticParameterCount++
}
}
}
if (!AsmUtil.IS_BUILT_WITH_ASM6) {
visitAnnotableParameterCount(mv, kotlinParameterTypes.size - syntheticParameterCount)
}
val syntheticParameterCount = kotlinParameterTypes.count { it.kind.isSkippedInGenericSignature }
visitAnnotableParameterCount(mv, kotlinParameterTypes.size - syntheticParameterCount)
kotlinParameterTypes.forEachIndexed { i, parameterSignature ->
val kind = parameterSignature.kind
@@ -248,7 +235,7 @@ private fun generateParameterAnnotations(
if (!kind.isSkippedInGenericSignature) {
AnnotationCodegen(innerClassConsumer, context) { descriptor, visible ->
mv.visitParameterAnnotation(
if (AsmUtil.IS_BUILT_WITH_ASM6) i else i - syntheticParameterCount,
i - syntheticParameterCount,
descriptor,
visible
)