Suppress/resolve unsafe cast warnings

Change-Id: Ic91b8e0cd3af9d709ff842fcba75456dc5396701
diff --git a/src/test/java/com/android/tools/r8/desugar/desugaredlibrary/conversiontests/ConversionIntroduceInterfaceMethodTest.java b/src/test/java/com/android/tools/r8/desugar/desugaredlibrary/conversiontests/ConversionIntroduceInterfaceMethodTest.java
index e90d8d2..5c01507 100644
--- a/src/test/java/com/android/tools/r8/desugar/desugaredlibrary/conversiontests/ConversionIntroduceInterfaceMethodTest.java
+++ b/src/test/java/com/android/tools/r8/desugar/desugaredlibrary/conversiontests/ConversionIntroduceInterfaceMethodTest.java
@@ -173,8 +173,7 @@
 
   static class CustomLibClass {
 
-    @SuppressWarnings({"unchecked", "WeakerAccess"})
-    public static void callForeach(Iterable iterable) {
+    public static void callForEach(Iterable<?> iterable) {
       iterable.forEach(x -> System.out.println("action called from java consumer"));
     }
   }
@@ -187,7 +186,7 @@
       // Call foreach with j$ consumer.
       strings.forEach(x -> System.out.println("action called from j$ consumer"));
       // Call foreach with java consumer.
-      CustomLibClass.callForeach(strings);
+      CustomLibClass.callForEach(strings);
     }
   }
 
@@ -222,7 +221,7 @@
 
     @Override
     public Iterator<E> iterator() {
-      return (Iterator<E>) Collections.singletonList(null).iterator();
+      return Collections.<E>singletonList(null).iterator();
     }
 
     @NotNull
diff --git a/src/test/java/com/android/tools/r8/desugar/desugaredlibrary/gson/OptionalTestClass.java b/src/test/java/com/android/tools/r8/desugar/desugaredlibrary/gson/OptionalTestClass.java
index fbc2c31..3a4e442 100644
--- a/src/test/java/com/android/tools/r8/desugar/desugaredlibrary/gson/OptionalTestClass.java
+++ b/src/test/java/com/android/tools/r8/desugar/desugaredlibrary/gson/OptionalTestClass.java
@@ -70,9 +70,8 @@
       return Optional.of(delegate.read(in));
     }
 
-    @SuppressWarnings("unchecked")
-    public static OptionalAdapter getInstance(TypeToken typeToken) {
-      TypeAdapter delegate;
+    public static OptionalAdapter<?> getInstance(TypeToken<?> typeToken) {
+      TypeAdapter<?> delegate;
       Type type = typeToken.getType();
       assert type instanceof ParameterizedType;
       Type innerType = ((ParameterizedType) type).getActualTypeArguments()[0];
@@ -88,7 +87,8 @@
     Gson gson = builder.create();
     Optional<Data> optionalData = Optional.of(new Data(1, "a"));
     String optionalDataSerialized = gson.toJson(optionalData);
-    Optional<Data> optionalDataDeserialized = gson.fromJson(optionalDataSerialized, Optional.class);
+    Optional<Data> optionalDataDeserialized =
+        gson.<Optional<Data>>fromJson(optionalDataSerialized, Optional.class);
     System.out.println(optionalData.getClass() == optionalDataDeserialized.getClass());
     System.out.println(optionalData.equals(optionalDataDeserialized));
   }
diff --git a/src/test/java/com/android/tools/r8/shaking/attributes/KeepSignatureTest.java b/src/test/java/com/android/tools/r8/shaking/attributes/KeepSignatureTest.java
index 05f9731..9dfff6e 100644
--- a/src/test/java/com/android/tools/r8/shaking/attributes/KeepSignatureTest.java
+++ b/src/test/java/com/android/tools/r8/shaking/attributes/KeepSignatureTest.java
@@ -155,6 +155,7 @@
     private T keptField;
     private T notKeptField;
 
+    @SuppressWarnings("unchecked")
     public <R> R keptMethod(T t) {
       if (keptField == null) {
         keptField = t;
@@ -163,6 +164,7 @@
     }
 
     @NeverInline
+    @SuppressWarnings("unchecked")
     public <R> R notKeptMethod(T t) {
       if (notKeptField == null) {
         notKeptField = t;