Allow mapping the diagnostics level of CheckEnumUnboxedDiagnostic
Bug: b/454032950
Change-Id: I0630e78153659643f5f5f93401a4564ca2ebc858
diff --git a/src/main/java/com/android/tools/r8/ir/optimize/enums/EnumDataMap.java b/src/main/java/com/android/tools/r8/ir/optimize/enums/EnumDataMap.java
index 7d317eb..91056a0 100644
--- a/src/main/java/com/android/tools/r8/ir/optimize/enums/EnumDataMap.java
+++ b/src/main/java/com/android/tools/r8/ir/optimize/enums/EnumDataMap.java
@@ -57,7 +57,8 @@
if (!failed.isEmpty()) {
CheckEnumUnboxedDiagnostic diagnostic =
CheckEnumUnboxedDiagnostic.builder().addFailedEnums(failed).build();
- throw appView.reporter().fatalError(diagnostic);
+ appView.reporter().error(diagnostic);
+ appView.reporter().failIfPendingErrors();
}
}
diff --git a/src/test/java/com/android/tools/r8/internal/benchmarks/appdumps/AGSABenchmarks.java b/src/test/java/com/android/tools/r8/internal/benchmarks/appdumps/AGSABenchmarks.java
index 63d9c37..1c9868a 100644
--- a/src/test/java/com/android/tools/r8/internal/benchmarks/appdumps/AGSABenchmarks.java
+++ b/src/test/java/com/android/tools/r8/internal/benchmarks/appdumps/AGSABenchmarks.java
@@ -5,6 +5,7 @@
import static org.junit.Assume.assumeTrue;
+import com.android.tools.r8.DiagnosticsLevel;
import com.android.tools.r8.R8FullTestBuilder;
import com.android.tools.r8.TestParameters;
import com.android.tools.r8.ToolHelper;
@@ -12,6 +13,7 @@
import com.android.tools.r8.benchmarks.BenchmarkConfig;
import com.android.tools.r8.benchmarks.appdumps.AbortBenchmarkException;
import com.android.tools.r8.benchmarks.appdumps.AppDumpBenchmarkBuilder;
+import com.android.tools.r8.errors.CheckEnumUnboxedDiagnostic;
import com.android.tools.r8.utils.timing.Timing;
import com.google.common.collect.ImmutableList;
import java.nio.file.Path;
@@ -59,6 +61,10 @@
options -> {
options.getOpenClosedInterfacesOptions().suppressAllOpenInterfaces();
options.getTestingOptions().dontReportFailingCheckDiscarded = true;
+ options.reporter.addDiagnosticsLevelMapping(
+ DiagnosticsLevel.ERROR,
+ CheckEnumUnboxedDiagnostic.class.getTypeName(),
+ DiagnosticsLevel.WARNING);
})
.allowDiagnosticMessages()
.allowUnusedDontWarnPatterns()