summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--java/lint.go6
-rw-r--r--java/lint_test.go19
2 files changed, 25 insertions, 0 deletions
diff --git a/java/lint.go b/java/lint.go
index bd6c1bae6..c79f6e7bb 100644
--- a/java/lint.go
+++ b/java/lint.go
@@ -364,6 +364,12 @@ func (l *linter) lint(ctx android.ModuleContext) {
return
}
+ for _, flag := range l.properties.Lint.Flags {
+ if strings.Contains(flag, "--disable") || strings.Contains(flag, "--enable") || strings.Contains(flag, "--check") {
+ ctx.PropertyErrorf("lint.flags", "Don't use --disable, --enable, or --check in the flags field, instead use the dedicated disabled_checks, warning_checks, error_checks, or fatal_checks fields")
+ }
+ }
+
if l.minSdkVersion.CompareTo(l.compileSdkVersion) == -1 {
l.extraMainlineLintErrors = append(l.extraMainlineLintErrors, updatabilityChecks...)
// Skip lint warning checks for NewApi warnings for libcore where they come from source
diff --git a/java/lint_test.go b/java/lint_test.go
index 6aee5946b..b51753f71 100644
--- a/java/lint_test.go
+++ b/java/lint_test.go
@@ -262,3 +262,22 @@ func TestJavaLintDatabaseSelectionFull(t *testing.T) {
}
}
}
+
+func TestCantControlCheckSeverityWithFlags(t *testing.T) {
+ bp := `
+ java_library {
+ name: "foo",
+ srcs: [
+ "a.java",
+ ],
+ min_sdk_version: "29",
+ sdk_version: "current",
+ lint: {
+ flags: ["--disabled", "NewApi"],
+ },
+ }
+ `
+ PrepareForTestWithJavaDefaultModules.
+ ExtendWithErrorHandler(android.FixtureExpectsOneErrorPattern("Don't use --disable, --enable, or --check in the flags field, instead use the dedicated disabled_checks, warning_checks, error_checks, or fatal_checks fields")).
+ RunTestWithBp(t, bp)
+}