clean-up Nest access control
Follow-up of 38123 merged
Bug: 132147083
Change-Id: I0ed9f0458302395a24066f11e1095477496af853
diff --git a/src/main/java/com/android/tools/r8/graph/JarClassFileReader.java b/src/main/java/com/android/tools/r8/graph/JarClassFileReader.java
index 8424d3a..df420b0 100644
--- a/src/main/java/com/android/tools/r8/graph/JarClassFileReader.java
+++ b/src/main/java/com/android/tools/r8/graph/JarClassFileReader.java
@@ -484,6 +484,10 @@
private int getMinorVersion() {
return ((version >> 16) & 0xFFFF);
}
+
+ public boolean isInANest() {
+ return !nestMembers.isEmpty() || nestHost != null;
+ }
}
private static DexAnnotationSet createAnnotationSet(
@@ -731,9 +735,10 @@
private boolean classRequiresCode() {
return parent.classKind == ClassKind.PROGRAM
- || parent.application.options.enableNestBasedAccessDesugaring
+ || (parent.application.options.enableNestBasedAccessDesugaring
+ && !parent.application.options.canUseNestBasedAccess()
&& parent.classKind == ClassKind.CLASSPATH
- && (!parent.nestMembers.isEmpty() || parent.nestHost != null);
+ && parent.isInANest());
}
@Override