bazel: enable unchecked/rawtypes errors for all Java source
PiperOrigin-RevId: 278695234
diff --git a/src/main/java/com/google/devtools/build/lib/collect/ImmutableSharedKeyMap.java b/src/main/java/com/google/devtools/build/lib/collect/ImmutableSharedKeyMap.java
index 3b084c8..0e1cef8 100644
--- a/src/main/java/com/google/devtools/build/lib/collect/ImmutableSharedKeyMap.java
+++ b/src/main/java/com/google/devtools/build/lib/collect/ImmutableSharedKeyMap.java
@@ -41,7 +41,7 @@
*/
@Immutable
public class ImmutableSharedKeyMap<K, V> extends CompactImmutableMap<K, V> {
- private static final Interner<OffsetTable> offsetTables = BlazeInterners.newWeakInterner();
+ private static final Interner<OffsetTable<?>> offsetTables = BlazeInterners.newWeakInterner();
private final OffsetTable<K> offsetTable;
@VisibleForSerialization protected final Object[] values;
@@ -89,7 +89,7 @@
if (!(o instanceof OffsetTable)) {
return false;
}
- OffsetTable that = (OffsetTable) o;
+ OffsetTable<?> that = (OffsetTable<?>) o;
return Arrays.equals(this.keys, that.keys);
}
diff --git a/src/main/java/com/google/devtools/build/lib/collect/compacthashmap/CompactHashMap.java b/src/main/java/com/google/devtools/build/lib/collect/compacthashmap/CompactHashMap.java
index ce13579..83de355 100644
--- a/src/main/java/com/google/devtools/build/lib/collect/compacthashmap/CompactHashMap.java
+++ b/src/main/java/com/google/devtools/build/lib/collect/compacthashmap/CompactHashMap.java
@@ -623,10 +623,11 @@
}
@Override
+ @SuppressWarnings("unchecked") // keys contains only Ks
public void forEach(Consumer<? super K> action) {
checkNotNull(action);
for (int i = firstEntryIndex(); i >= 0; i = getSuccessor(i)) {
- action.accept((K) keys[i]);
+ action.accept((K) keys[i]); // unchecked
}
}
}
diff --git a/src/main/java/com/google/devtools/build/lib/concurrent/ParallelVisitor.java b/src/main/java/com/google/devtools/build/lib/concurrent/ParallelVisitor.java
index af2f3a8..0204c5b 100644
--- a/src/main/java/com/google/devtools/build/lib/concurrent/ParallelVisitor.java
+++ b/src/main/java/com/google/devtools/build/lib/concurrent/ParallelVisitor.java
@@ -301,7 +301,7 @@
Collection<VisitKeyT> pendingKeysToVisit = new ArrayList<>(visitQueue.size());
visitQueue.drainTo(pendingKeysToVisit);
- for (Task task : getVisitTasks(pendingKeysToVisit)) {
+ for (Task<?> task : getVisitTasks(pendingKeysToVisit)) {
execute(task);
}
}
diff --git a/src/main/java/com/google/devtools/build/lib/profiler/PredicateBasedStatRecorder.java b/src/main/java/com/google/devtools/build/lib/profiler/PredicateBasedStatRecorder.java
index 55b0020..9851391 100644
--- a/src/main/java/com/google/devtools/build/lib/profiler/PredicateBasedStatRecorder.java
+++ b/src/main/java/com/google/devtools/build/lib/profiler/PredicateBasedStatRecorder.java
@@ -15,7 +15,6 @@
import com.google.common.base.Predicate;
import com.google.common.collect.ImmutableList;
-
import java.util.List;
/**
@@ -27,11 +26,12 @@
*/
public class PredicateBasedStatRecorder implements StatRecorder {
- private final Predicate[] predicates;
+ private final Predicate<? super String>[] predicates;
private final StatRecorder[] recorders;
+ @SuppressWarnings({"unchecked", "rawtypes"})
public PredicateBasedStatRecorder(List<RecorderAndPredicate> stats) {
- predicates = new Predicate[stats.size()];
+ predicates = (Predicate<? super String>[]) new Predicate[stats.size()]; // unchecked, rawtypes
recorders = new StatRecorder[stats.size()];
for (int i = 0; i < stats.size(); i++) {
RecorderAndPredicate stat = stats.get(i);
@@ -40,7 +40,6 @@
}
}
- @SuppressWarnings("unchecked")
@Override
public void addStat(int duration, Object obj) {
String description = obj.toString();
diff --git a/src/main/java/com/google/devtools/build/lib/remote/logging/LoggingInterceptor.java b/src/main/java/com/google/devtools/build/lib/remote/logging/LoggingInterceptor.java
index 1df5659..ee4771f 100644
--- a/src/main/java/com/google/devtools/build/lib/remote/logging/LoggingInterceptor.java
+++ b/src/main/java/com/google/devtools/build/lib/remote/logging/LoggingInterceptor.java
@@ -58,21 +58,21 @@
protected <ReqT, RespT> @Nullable LoggingHandler selectHandler(
MethodDescriptor<ReqT, RespT> method) {
if (method == ExecutionGrpc.getExecuteMethod()) {
- return new ExecuteHandler();
+ return new ExecuteHandler(); // <ExecuteRequest, Operation>
} else if (method == ExecutionGrpc.getWaitExecutionMethod()) {
- return new WaitExecutionHandler();
+ return new WaitExecutionHandler(); // <WaitExecutionRequest, Operation>
} else if (method == ActionCacheGrpc.getGetActionResultMethod()) {
- return new GetActionResultHandler();
+ return new GetActionResultHandler(); // <GetActionResultRequest, ActionResult>
} else if (method == ActionCacheGrpc.getUpdateActionResultMethod()) {
- return new UpdateActionResultHandler();
+ return new UpdateActionResultHandler(); // <UpdateActionResultRequest, ActionResult>
} else if (method == ContentAddressableStorageGrpc.getFindMissingBlobsMethod()) {
- return new FindMissingBlobsHandler();
+ return new FindMissingBlobsHandler(); // <FindMissingBlobsRequest, FindMissingBlobsResponse>
} else if (method == ByteStreamGrpc.getReadMethod()) {
- return new ReadHandler();
+ return new ReadHandler(); // <ReadRequest, ReadResponse>
} else if (method == ByteStreamGrpc.getWriteMethod()) {
- return new WriteHandler();
+ return new WriteHandler(); // <WriteRequest, WriteResponse>
} else if (method == CapabilitiesGrpc.getGetCapabilitiesMethod()) {
- return new GetCapabilitiesHandler();
+ return new GetCapabilitiesHandler(); // <GetCapabilitiesRequest, ServerCapabilities>
}
return null;
}
@@ -81,6 +81,7 @@
public <ReqT, RespT> ClientCall<ReqT, RespT> interceptCall(
MethodDescriptor<ReqT, RespT> method, CallOptions callOptions, Channel next) {
ClientCall<ReqT, RespT> call = next.newCall(method, callOptions);
+ @SuppressWarnings("unchecked") // handler matches method, but that type is inexpressible
LoggingHandler<ReqT, RespT> handler = selectHandler(method);
if (handler != null) {
return new LoggingForwardingCall<>(call, handler, method);
diff --git a/src/main/java/com/google/devtools/build/lib/rules/config/ConfigSetting.java b/src/main/java/com/google/devtools/build/lib/rules/config/ConfigSetting.java
index 16ad7d3..8866522 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/config/ConfigSetting.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/config/ConfigSetting.java
@@ -377,7 +377,8 @@
// The config_setting's expected value *must* be a single map entry (see method comments).
Object expectedListValue = Iterables.getOnlyElement(expectedList);
Map.Entry<?, ?> expectedEntry = (Map.Entry<?, ?>) expectedListValue;
- for (Map.Entry<?, ?> actualEntry : Lists.reverse((List<Map.Entry<?, ?>>) actualList)) {
+ for (Object elem : Lists.reverse(actualList)) {
+ Map.Entry<?, ?> actualEntry = (Map.Entry<?, ?>) elem;
if (actualEntry.getKey().equals(expectedEntry.getKey())) {
// Found a key match!
return actualEntry.getValue().equals(expectedEntry.getValue());
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcModule.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcModule.java
index 85fb274..9193042 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcModule.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcModule.java
@@ -312,18 +312,22 @@
/**
* Converts an object that can be the NoneType to the actual object if it is not or returns the
* default value if none.
+ *
+ * <p>This operation is wildly unsound. It performs no dymamic checks (casts), it simply lies
+ * about the type.
*/
@SuppressWarnings("unchecked")
protected static <T> T convertFromNoneable(Object obj, @Nullable T defaultValue) {
if (EvalUtils.isNullOrNone(obj)) {
return defaultValue;
}
- return (T) obj;
+ return (T) obj; // totally unsafe
}
/** Converts an object that can be ether SkylarkNestedSet or None into NestedSet. */
protected NestedSet<String> asStringNestedSet(Object o) throws SkylarkNestedSet.TypeException {
- SkylarkNestedSet skylarkNestedSet = convertFromNoneable(o, /* defaultValue= */ null);
+ SkylarkNestedSet skylarkNestedSet =
+ convertFromNoneable(o, /* defaultValue= */ (SkylarkNestedSet) null);
if (skylarkNestedSet != null) {
return skylarkNestedSet.getSet(String.class);
} else {
@@ -333,7 +337,8 @@
/** Converts an object that can be either SkylarkList, or None into ImmutableList. */
protected ImmutableList<String> asStringImmutableList(Object o) {
- SkylarkList skylarkList = convertFromNoneable(o, /* defaultValue= */ null);
+ SkylarkList<String> skylarkList =
+ convertFromNoneable(o, /* defaultValue= */ (SkylarkList<String>) null);
if (skylarkList != null) {
return skylarkList.getImmutableList();
} else {
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcToolchainSuite.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcToolchainSuite.java
index cae6d68..4391066 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcToolchainSuite.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcToolchainSuite.java
@@ -114,7 +114,7 @@
throws RuleErrorException {
T selectedAttributes = null;
for (TransitiveInfoCollection dep : ruleContext.getPrerequisiteMap("toolchains").values()) {
- T attributes = (T) dep.get(ToolchainInfo.PROVIDER);
+ T attributes = clazz.cast(dep.get(ToolchainInfo.PROVIDER));
if (attributes != null && attributes.getCcToolchainLabel().equals(selectedCcToolchain)) {
selectedAttributes = attributes;
break;
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaToolchainRule.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaToolchainRule.java
index 75307af..3ffd97e 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaToolchainRule.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaToolchainRule.java
@@ -37,8 +37,8 @@
private final Class<C> ruleClass;
- public static <C extends JavaToolchain> JavaToolchainRule create(Class<C> ruleClass) {
- return new JavaToolchainRule(ruleClass);
+ public static <C extends JavaToolchain> JavaToolchainRule<C> create(Class<C> ruleClass) {
+ return new JavaToolchainRule<C>(ruleClass);
}
private JavaToolchainRule(Class<C> ruleClass) {
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcProvider.java b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcProvider.java
index 42defb7..2da9350 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcProvider.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcProvider.java
@@ -878,9 +878,8 @@
addTransitiveAndFilter(objcProviderBuilder, key, notContainedIn(avoidPathsSet));
}
- @SuppressWarnings("unchecked")
- private <T> void addTransitiveAndAvoid(ObjcProvider.Builder objcProviderBuilder, Key<T> key,
- Iterable<ObjcProvider> avoidProviders) {
+ private <T> void addTransitiveAndAvoid(
+ ObjcProvider.Builder objcProviderBuilder, Key<T> key, Iterable<ObjcProvider> avoidProviders) {
HashSet<T> avoidItemsSet = new HashSet<T>();
for (ObjcProvider avoidProvider : avoidProviders) {
avoidItemsSet.addAll(avoidProvider.getPropagable(key).toList());
@@ -1026,7 +1025,7 @@
* Add all elements from a single key of the given provider, and propagate them to any
* (transitive) dependers on this ObjcProvider.
*/
- public Builder addTransitiveAndPropagate(Key key, ObjcProvider provider) {
+ public Builder addTransitiveAndPropagate(Key<?> key, ObjcProvider provider) {
if (provider.items.containsKey(key)) {
uncheckedAddTransitive(key, provider.items.get(key), this.items);
}
@@ -1173,7 +1172,6 @@
}
}
- @SuppressWarnings({"rawtypes", "unchecked"})
public ObjcProvider build() {
ImmutableMap.Builder<Key<?>, NestedSet<?>> propagatedBuilder = new ImmutableMap.Builder<>();
for (Map.Entry<Key<?>, NestedSetBuilder<?>> typeEntry : items.entrySet()) {
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android/AndroidDataProcessingApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android/AndroidDataProcessingApi.java
index df99c45..c3a26cf 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android/AndroidDataProcessingApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android/AndroidDataProcessingApi.java
@@ -42,12 +42,12 @@
TransitiveInfoCollectionT extends TransitiveInfoCollectionApi,
FileT extends FileApi,
SpecialFileT extends FileApi,
- AndroidAssetsInfoT extends AndroidAssetsInfoApi,
- AndroidResourcesInfoT extends AndroidResourcesInfoApi,
- AndroidManifestInfoT extends AndroidManifestInfoApi,
- AndroidLibraryAarInfoT extends AndroidLibraryAarInfoApi,
- AndroidBinaryDataInfoT extends AndroidBinaryDataInfoApi,
- ValidatedAndroidDataT extends ValidatedAndroidDataApi> {
+ AndroidAssetsInfoT extends AndroidAssetsInfoApi<?, ?>,
+ AndroidResourcesInfoT extends AndroidResourcesInfoApi<?, ?, ?>,
+ AndroidManifestInfoT extends AndroidManifestInfoApi<?>,
+ AndroidLibraryAarInfoT extends AndroidLibraryAarInfoApi<?>,
+ AndroidBinaryDataInfoT extends AndroidBinaryDataInfoApi<?>,
+ ValidatedAndroidDataT extends ValidatedAndroidDataApi<?, ?>> {
@SkylarkCallable(
name = "assets_from_deps",
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android/AndroidResourcesInfoApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android/AndroidResourcesInfoApi.java
index 6953a06..a4e8362 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android/AndroidResourcesInfoApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android/AndroidResourcesInfoApi.java
@@ -37,7 +37,7 @@
category = SkylarkModuleCategory.PROVIDER)
public interface AndroidResourcesInfoApi<
FileT extends FileApi,
- ValidatedAndroidDataT extends ValidatedAndroidDataApi,
+ ValidatedAndroidDataT extends ValidatedAndroidDataApi<?, ?>,
AndroidManifestInfoT extends AndroidManifestInfoApi<FileT>>
extends StructApi {
@@ -130,7 +130,7 @@
documented = false)
public interface AndroidResourcesInfoApiProvider<
FileT extends FileApi,
- ValidatedAndroidDataT extends ValidatedAndroidDataApi,
+ ValidatedAndroidDataT extends ValidatedAndroidDataApi<?, ?>,
AndroidManifestInfoT extends AndroidManifestInfoApi<FileT>>
extends ProviderApi {
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android/AndroidSkylarkCommonApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android/AndroidSkylarkCommonApi.java
index d7a5ef9..76c6bd1 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android/AndroidSkylarkCommonApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android/AndroidSkylarkCommonApi.java
@@ -28,7 +28,7 @@
+ "you will be broken when it is removed."
+ "Common utilities and functionality related to Android rules.",
documented = false)
-public interface AndroidSkylarkCommonApi<FileT extends FileApi, JavaInfoT extends JavaInfoApi> {
+public interface AndroidSkylarkCommonApi<FileT extends FileApi, JavaInfoT extends JavaInfoApi<?>> {
@SkylarkCallable(
name = "create_device_broker_info",
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/CcInfoApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/CcInfoApi.java
index 17c1180..801403b 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/CcInfoApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/CcInfoApi.java
@@ -49,7 +49,7 @@
name = "linking_context",
doc = "Returns the <code>LinkingContext</code>",
structField = true)
- CcLinkingContextApi getCcLinkingContext();
+ CcLinkingContextApi<?> getCcLinkingContext();
/** The provider implementing this can construct CcInfo objects. */
@SkylarkModule(
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/CcModuleApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/CcModuleApi.java
index b3c2a8d..542e951 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/CcModuleApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/CcModuleApi.java
@@ -40,11 +40,11 @@
public interface CcModuleApi<
SkylarkActionFactoryT extends SkylarkActionFactoryApi,
FileT extends FileApi,
- CcToolchainProviderT extends CcToolchainProviderApi,
+ CcToolchainProviderT extends CcToolchainProviderApi<?>,
FeatureConfigurationT extends FeatureConfigurationApi,
CompilationContextT extends CcCompilationContextApi,
LinkerInputT extends LinkerInputApi<LibraryToLinkT, FileT>,
- LinkingContextT extends CcLinkingContextApi,
+ LinkingContextT extends CcLinkingContextApi<?>,
LibraryToLinkT extends LibraryToLinkApi<FileT>,
CcToolchainVariablesT extends CcToolchainVariablesApi,
SkylarkRuleContextT extends SkylarkRuleContextApi,
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/CompilationInfoApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/CompilationInfoApi.java
index b86a354..a408159 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/CompilationInfoApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/CompilationInfoApi.java
@@ -29,7 +29,7 @@
)
public interface CompilationInfoApi {
@SkylarkCallable(name = "cc_compilation_outputs", structField = true, documented = false)
- CcCompilationOutputsApi getCcCompilationOutputs();
+ CcCompilationOutputsApi<?> getCcCompilationOutputs();
@SkylarkCallable(name = "compilation_context", structField = true, documented = false)
CcCompilationContextApi getCcCompilationContext();
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/LinkingInfoApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/LinkingInfoApi.java
index 31c8247..3dbc4b4 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/LinkingInfoApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/LinkingInfoApi.java
@@ -30,8 +30,8 @@
public interface LinkingInfoApi {
@SkylarkCallable(name = "linking_context", structField = true, documented = false)
- CcLinkingContextApi getCcLinkingContext();
+ CcLinkingContextApi<?> getCcLinkingContext();
@SkylarkCallable(name = "cc_linking_outputs", structField = true, documented = false)
- CcLinkingOutputsApi getCcLinkingOutputs();
+ CcLinkingOutputsApi<?> getCcLinkingOutputs();
}
diff --git a/src/main/java/com/google/devtools/build/lib/util/OrderedSetMultimap.java b/src/main/java/com/google/devtools/build/lib/util/OrderedSetMultimap.java
index 79be3d6..43fa38c 100644
--- a/src/main/java/com/google/devtools/build/lib/util/OrderedSetMultimap.java
+++ b/src/main/java/com/google/devtools/build/lib/util/OrderedSetMultimap.java
@@ -29,7 +29,7 @@
private final SetMultimap<K, V> delegate = LinkedHashMultimap.<K, V>create();
@Override
- protected SetMultimap delegate() {
+ protected SetMultimap<K, V> delegate() {
return delegate;
}
diff --git a/src/test/java/com/google/devtools/build/lib/query2/testutil/AbstractQueryTest.java b/src/test/java/com/google/devtools/build/lib/query2/testutil/AbstractQueryTest.java
index 8f21bb4..38f9e40 100644
--- a/src/test/java/com/google/devtools/build/lib/query2/testutil/AbstractQueryTest.java
+++ b/src/test/java/com/google/devtools/build/lib/query2/testutil/AbstractQueryTest.java
@@ -1095,6 +1095,7 @@
helper.setOrderedResults(true); // This query needs a graph.
ResultAndTargets<T> resultAndTargets = helper.evaluateQuery("//x:*");
+ @SuppressWarnings("unchecked")
DigraphQueryEvalResult<T> digraphResult =
(DigraphQueryEvalResult<T>) resultAndTargets.getQueryEvalResult();
Set<T> results = resultAndTargets.getResultSet();
diff --git a/src/test/java/com/google/devtools/build/lib/remote/RemoteSpawnCacheTest.java b/src/test/java/com/google/devtools/build/lib/remote/RemoteSpawnCacheTest.java
index ba37edb..73eec07 100644
--- a/src/test/java/com/google/devtools/build/lib/remote/RemoteSpawnCacheTest.java
+++ b/src/test/java/com/google/devtools/build/lib/remote/RemoteSpawnCacheTest.java
@@ -108,7 +108,7 @@
@Mock private AbstractRemoteActionCache remoteCache;
private RemoteSpawnCache cache;
private FileOutErr outErr;
- private final List<Pair<ProgressStatus, String>> progressUpdates = new ArrayList();
+ private final List<Pair<ProgressStatus, String>> progressUpdates = new ArrayList<>();
private StoredEventHandler eventHandler = new StoredEventHandler();
diff --git a/src/test/java/com/google/devtools/build/lib/rules/java/JavaSkylarkApiTest.java b/src/test/java/com/google/devtools/build/lib/rules/java/JavaSkylarkApiTest.java
index 96a99a6..f370e48 100644
--- a/src/test/java/com/google/devtools/build/lib/rules/java/JavaSkylarkApiTest.java
+++ b/src/test/java/com/google/devtools/build/lib/rules/java/JavaSkylarkApiTest.java
@@ -321,6 +321,7 @@
((SkylarkNestedSet) info.getValue("transitive_compile_time_jars"));
SkylarkNestedSet compileJars = ((SkylarkNestedSet) info.getValue("compile_jars"));
SkylarkNestedSet fullCompileJars = ((SkylarkNestedSet) info.getValue("full_compile_jars"));
+ @SuppressWarnings("unchecked")
SkylarkList<Artifact> sourceJars = ((SkylarkList<Artifact>) info.getValue("source_jars"));
JavaRuleOutputJarsProvider outputs = ((JavaRuleOutputJarsProvider) info.getValue("outputs"));
@@ -1378,7 +1379,6 @@
new SkylarkKey(
Label.parseAbsolute("//foo:extension.bzl", ImmutableMap.of()), "result"));
- @SuppressWarnings("unchecked")
SkylarkNestedSet sourceJars = (SkylarkNestedSet) info.getValue("property");
assertThat(prettyArtifactNames(sourceJars.getSet(Artifact.class)))
@@ -1412,7 +1412,6 @@
new SkylarkKey(
Label.parseAbsolute("//foo:extension.bzl", ImmutableMap.of()), "result"));
- @SuppressWarnings("unchecked")
SkylarkNestedSet sourceJars = (SkylarkNestedSet) info.getValue("property");
assertThat(prettyArtifactNames(sourceJars.getSet(Artifact.class)))
@@ -1446,7 +1445,6 @@
new SkylarkKey(
Label.parseAbsolute("//foo:extension.bzl", ImmutableMap.of()), "result"));
- @SuppressWarnings("unchecked")
SkylarkNestedSet sourceJars = (SkylarkNestedSet) info.getValue("property");
assertThat(prettyArtifactNames(sourceJars.getSet(Artifact.class)))
@@ -1480,7 +1478,6 @@
new SkylarkKey(
Label.parseAbsolute("//foo:extension.bzl", ImmutableMap.of()), "result"));
- @SuppressWarnings("unchecked")
SkylarkNestedSet exports = (SkylarkNestedSet) (info.getValue("property"));
assertThat(exports.getSet(Label.class))
@@ -2220,10 +2217,7 @@
"toolchain_resolution_enabled(name='r')");
ConfiguredTarget r = getConfiguredTarget("//a:r");
- @SuppressWarnings("unchecked") // Use an extra variable in order to suppress the warning.
- boolean toolchainResolutionEnabled =
- (boolean) getMyInfoFromTarget(r).getValue("toolchain_resolution_enabled");
- return toolchainResolutionEnabled;
+ return (boolean) getMyInfoFromTarget(r).getValue("toolchain_resolution_enabled");
}
@Test
@@ -2283,7 +2277,6 @@
useConfiguration(
"--javabase=//a:jvm", "--extra_toolchains=//a:all", "--platforms=//a:platform");
ConfiguredTarget ct = getConfiguredTarget("//a:r");
- @SuppressWarnings("unchecked")
SkylarkNestedSet files = (SkylarkNestedSet) ct.get("files");
assertThat(prettyArtifactNames(files.toCollection(Artifact.class))).containsExactly("a/a.txt");
}
diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/ConfigurationsForTargetsTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/ConfigurationsForTargetsTest.java
index 2f83355..f64040f 100644
--- a/src/test/java/com/google/devtools/build/lib/skyframe/ConfigurationsForTargetsTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skyframe/ConfigurationsForTargetsTest.java
@@ -232,6 +232,7 @@
Object evalResult = SkyframeExecutorTestUtils.evaluate(
skyframeExecutor, key, /*keepGoing=*/false, reporter);
skyframeExecutor.getSkyframeBuildView().enableAnalysis(false);
+ @SuppressWarnings("unchecked")
SkyValue value = ((EvaluationResult<ComputeDependenciesFunction.Value>) evalResult).get(key);
return ((ComputeDependenciesFunction.Value) value).depMap;
}
diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/PackageLookupFunctionTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/PackageLookupFunctionTest.java
index 5350d3f..51e3a53 100644
--- a/src/test/java/com/google/devtools/build/lib/skyframe/PackageLookupFunctionTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skyframe/PackageLookupFunctionTest.java
@@ -126,7 +126,7 @@
FileStateValue.FILE_STATE,
new FileStateFunction(
new AtomicReference<TimestampGranularityMonitor>(),
- new AtomicReference(UnixGlob.DEFAULT_SYSCALLS),
+ new AtomicReference<>(UnixGlob.DEFAULT_SYSCALLS),
externalFilesHelper));
skyFunctions.put(FileValue.FILE, new FileFunction(pkgLocator));
skyFunctions.put(SkyFunctions.DIRECTORY_LISTING, new DirectoryListingFunction());