Remove flag incompatible_static_name_resolution_in_build_files
It was flipped. This change is expected to be a no-op.
https://github.com/bazelbuild/bazel/issues/8022
RELNOTES: None.
PiperOrigin-RevId: 253035152
diff --git a/src/main/java/com/google/devtools/build/lib/packages/StarlarkSemanticsOptions.java b/src/main/java/com/google/devtools/build/lib/packages/StarlarkSemanticsOptions.java
index 66b1bb3..46c45e8 100644
--- a/src/main/java/com/google/devtools/build/lib/packages/StarlarkSemanticsOptions.java
+++ b/src/main/java/com/google/devtools/build/lib/packages/StarlarkSemanticsOptions.java
@@ -531,20 +531,6 @@
+ "will be available")
public boolean incompatibleRemoveNativeMavenJar;
- @Option(
- name = "incompatible_static_name_resolution_in_build_files",
- defaultValue = "true",
- documentationCategory = OptionDocumentationCategory.STARLARK_SEMANTICS,
- effectTags = {OptionEffectTag.BUILD_FILE_SEMANTICS},
- metadataTags = {
- OptionMetadataTag.INCOMPATIBLE_CHANGE,
- OptionMetadataTag.TRIGGERED_BY_ALL_INCOMPATIBLE_CHANGES
- },
- help =
- "If set to true, BUILD files use static name resolution (which can find errors in code "
- + "that is not executed). See https://github.com/bazelbuild/bazel/issues/8022")
- public boolean incompatibleStaticNameResolutionInBuildFiles;
-
/** Used in an integration test to confirm that flags are visible to the interpreter. */
@Option(
name = "internal_skylark_flag_test_canary",
@@ -669,7 +655,6 @@
.incompatibleRemapMainRepo(incompatibleRemapMainRepo)
.incompatibleRemoveNativeMavenJar(incompatibleRemoveNativeMavenJar)
.incompatibleRestrictNamedParams(incompatibleRestrictNamedParams)
- .incompatibleStaticNameResolutionInBuildFiles(incompatibleStaticNameResolutionInBuildFiles)
.incompatibleStringJoinRequiresStrings(incompatibleStringJoinRequiresStrings)
.internalSkylarkFlagTestCanary(internalSkylarkFlagTestCanary)
.incompatibleDoNotSplitLinkingCmdline(incompatibleDoNotSplitLinkingCmdline)
diff --git a/src/main/java/com/google/devtools/build/lib/syntax/StarlarkSemantics.java b/src/main/java/com/google/devtools/build/lib/syntax/StarlarkSemantics.java
index a272fb7..9c955dd 100644
--- a/src/main/java/com/google/devtools/build/lib/syntax/StarlarkSemantics.java
+++ b/src/main/java/com/google/devtools/build/lib/syntax/StarlarkSemantics.java
@@ -197,8 +197,6 @@
public abstract boolean incompatibleStringJoinRequiresStrings();
- public abstract boolean incompatibleStaticNameResolutionInBuildFiles();
-
public abstract boolean internalSkylarkFlagTestCanary();
public abstract boolean incompatibleDoNotSplitLinkingCmdline();
@@ -273,7 +271,6 @@
.incompatibleRemapMainRepo(false)
.incompatibleRemoveNativeMavenJar(false)
.incompatibleRestrictNamedParams(false)
- .incompatibleStaticNameResolutionInBuildFiles(true)
.incompatibleStringJoinRequiresStrings(true)
.internalSkylarkFlagTestCanary(false)
.incompatibleDoNotSplitLinkingCmdline(true)
@@ -363,8 +360,6 @@
public abstract Builder incompatibleStringJoinRequiresStrings(boolean value);
- public abstract Builder incompatibleStaticNameResolutionInBuildFiles(boolean value);
-
public abstract Builder internalSkylarkFlagTestCanary(boolean value);
public abstract Builder incompatibleDoNotSplitLinkingCmdline(boolean value);
diff --git a/src/main/java/com/google/devtools/build/lib/syntax/ValidationEnvironment.java b/src/main/java/com/google/devtools/build/lib/syntax/ValidationEnvironment.java
index 590e9540..6233bfd 100644
--- a/src/main/java/com/google/devtools/build/lib/syntax/ValidationEnvironment.java
+++ b/src/main/java/com/google/devtools/build/lib/syntax/ValidationEnvironment.java
@@ -402,14 +402,12 @@
// Wrap the boolean inside an array so that the inner class can modify it.
final boolean[] success = new boolean[] {true};
- if (env.getSemantics().incompatibleStaticNameResolutionInBuildFiles()) {
- ValidationEnvironment venv = new ValidationEnvironment(env, true);
- try {
- venv.validateAst(statements);
- } catch (ValidationException e) {
- eventHandler.handle(Event.error(e.exception.getLocation(), e.exception.getMessage()));
- return false;
- }
+ ValidationEnvironment venv = new ValidationEnvironment(env, true);
+ try {
+ venv.validateAst(statements);
+ } catch (ValidationException e) {
+ eventHandler.handle(Event.error(e.exception.getLocation(), e.exception.getMessage()));
+ return false;
}
// TODO(laurentlb): Merge with the visitor above when possible (i.e. when BUILD files use it).
diff --git a/src/test/java/com/google/devtools/build/lib/packages/SkylarkSemanticsConsistencyTest.java b/src/test/java/com/google/devtools/build/lib/packages/SkylarkSemanticsConsistencyTest.java
index 9758c23..86f9ccc 100644
--- a/src/test/java/com/google/devtools/build/lib/packages/SkylarkSemanticsConsistencyTest.java
+++ b/src/test/java/com/google/devtools/build/lib/packages/SkylarkSemanticsConsistencyTest.java
@@ -163,7 +163,6 @@
"--incompatible_remap_main_repo=" + rand.nextBoolean(),
"--incompatible_remove_native_maven_jar=" + rand.nextBoolean(),
"--incompatible_restrict_named_params=" + rand.nextBoolean(),
- "--incompatible_static_name_resolution_in_build_files=" + rand.nextBoolean(),
"--incompatible_string_join_requires_strings=" + rand.nextBoolean(),
"--incompatible_restrict_string_escapes=" + rand.nextBoolean(),
"--internal_skylark_flag_test_canary=" + rand.nextBoolean());
@@ -217,7 +216,6 @@
.incompatibleRemapMainRepo(rand.nextBoolean())
.incompatibleRemoveNativeMavenJar(rand.nextBoolean())
.incompatibleRestrictNamedParams(rand.nextBoolean())
- .incompatibleStaticNameResolutionInBuildFiles(rand.nextBoolean())
.incompatibleStringJoinRequiresStrings(rand.nextBoolean())
.incompatibleRestrictStringEscapes(rand.nextBoolean())
.internalSkylarkFlagTestCanary(rand.nextBoolean())
diff --git a/src/test/java/com/google/devtools/build/lib/syntax/EvaluationTest.java b/src/test/java/com/google/devtools/build/lib/syntax/EvaluationTest.java
index 60bbb78..b06623c 100644
--- a/src/test/java/com/google/devtools/build/lib/syntax/EvaluationTest.java
+++ b/src/test/java/com/google/devtools/build/lib/syntax/EvaluationTest.java
@@ -681,12 +681,7 @@
@Test
public void testStaticNameResolution() throws Exception {
- newTest("--incompatible_static_name_resolution_in_build_files=true")
- .testIfErrorContains("name 'foo' is not defined", "[foo for x in []]");
-
- // legacy
- new BuildTest("--incompatible_static_name_resolution_in_build_files=false")
- .testStatement("str([foo for x in []])", "[]");
+ newTest().testIfErrorContains("name 'foo' is not defined", "[foo for x in []]");
}
@Test