diff --git a/base/src/main/java/proguard/fixer/kotlin/KotlinAnnotationFlagFixer.java b/base/src/main/java/proguard/fixer/kotlin/KotlinAnnotationFlagFixer.java index c571edcb8..3fc0e9d83 100644 --- a/base/src/main/java/proguard/fixer/kotlin/KotlinAnnotationFlagFixer.java +++ b/base/src/main/java/proguard/fixer/kotlin/KotlinAnnotationFlagFixer.java @@ -202,8 +202,6 @@ public void visitAnyType(Clazz clazz, KotlinTypeMetadata kotlinTypeMetadata) kotlinTypeMetadata.typeArgumentsAccept(clazz, this); kotlinTypeMetadata.upperBoundsAccept( clazz, this); kotlinTypeMetadata.abbreviationAccept( clazz, this); - - kotlinTypeMetadata.flags.common.hasAnnotations = !kotlinTypeMetadata.annotations.isEmpty(); } @Override @@ -213,7 +211,6 @@ public void visitFunctionReceiverType(Clazz clazz, KotlinTypeMetadata kotlinTypeMetadata) { kotlinFunctionMetadata.referencedMethodAccept(this.annotationCounter.reset()); - kotlinTypeMetadata.flags.common.hasAnnotations = annotationCounter.getParameterAnnotationCount(0) > 0; } // Implementations for KotlinTypeParameterVisitor. @@ -225,8 +222,6 @@ public void visitAnyValueParameter(Clazz clazz, public void visitAnyTypeParameter(Clazz clazz, KotlinTypeParameterMetadata kotlinTypeParameterMetadata) { kotlinTypeParameterMetadata.upperBoundsAccept(clazz, this); - - kotlinTypeParameterMetadata.flags.common.hasAnnotations = !kotlinTypeParameterMetadata.annotations.isEmpty(); } // Implementations for KotlinValueParameterVisitor. diff --git a/docs/md/manual/releasenotes.md b/docs/md/manual/releasenotes.md index 48dfdc347..e2119e67b 100644 --- a/docs/md/manual/releasenotes.md +++ b/docs/md/manual/releasenotes.md @@ -4,6 +4,7 @@ - Fix potential access issues when backporting. - Fix potential NoClassDefFoundError when using type specialization optimization. (#373) +- Improve processing of Kotlin metadata flags to prevent unnecessary null checks for consumers of protected library artifacts. ## Version 7.4.1 diff --git a/gradle.properties b/gradle.properties index 467552165..ff9f44d71 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,7 +1,7 @@ proguardVersion = 7.4.1 # The version of ProGuardCORE that sub-projects are built with -proguardCoreVersion = 9.1.0 +proguardCoreVersion = 9.1.1 gsonVersion = 2.9.0 kotlinVersion = 1.7.20 target = 1.8