diff --git a/src/main/java/com/android/tools/r8/Version.java b/src/main/java/com/android/tools/r8/Version.java
index c309cc4..287e402 100644
--- a/src/main/java/com/android/tools/r8/Version.java
+++ b/src/main/java/com/android/tools/r8/Version.java
@@ -11,7 +11,7 @@
 
   // This field is accessed from release scripts using simple pattern matching.
   // Therefore, changing this field could break our release scripts.
-  public static final String LABEL = "2.0.59";
+  public static final String LABEL = "2.0.60";
 
   private Version() {
   }
diff --git a/src/main/java/com/android/tools/r8/ir/desugar/backports/NumericMethodRewrites.java b/src/main/java/com/android/tools/r8/ir/desugar/backports/NumericMethodRewrites.java
index 86d7494..f0aece7 100644
--- a/src/main/java/com/android/tools/r8/ir/desugar/backports/NumericMethodRewrites.java
+++ b/src/main/java/com/android/tools/r8/ir/desugar/backports/NumericMethodRewrites.java
@@ -32,8 +32,11 @@
       DexItemFactory factory) {
     List<Value> values = invoke.inValues();
     assert values.size() == 1;
-    invoke.outValue().replaceUsers(values.get(0));
-    iterator.remove();
+    if (invoke.hasOutValue()) {
+      invoke.outValue().replaceUsers(values.get(0));
+    }
+    // TODO(b/152853271): Debugging information is lost here (DebugLocalWrite may be required).
+    iterator.removeOrReplaceByDebugLocalRead();
   }
 
   private NumericMethodRewrites() {
diff --git a/src/test/java/com/android/tools/r8/desugar/backports/ByteBackportTest.java b/src/test/java/com/android/tools/r8/desugar/backports/ByteBackportTest.java
index 13a4564..e92fcc7 100644
--- a/src/test/java/com/android/tools/r8/desugar/backports/ByteBackportTest.java
+++ b/src/test/java/com/android/tools/r8/desugar/backports/ByteBackportTest.java
@@ -21,8 +21,8 @@
 
   public ByteBackportTest(TestParameters parameters) {
     super(parameters, Byte.class, Main.class);
-    registerTarget(AndroidApiLevel.O, 16);
-    registerTarget(AndroidApiLevel.N, 8);
+    registerTarget(AndroidApiLevel.O, 17);
+    registerTarget(AndroidApiLevel.N, 9);
     registerTarget(AndroidApiLevel.K, 7);
   }
 
@@ -34,10 +34,13 @@
       testToUnsignedLong();
     }
 
+    @SuppressWarnings("ResultOfMethodCallIgnored")
     private static void testHashCode() {
       for (int i = Byte.MIN_VALUE; i < Byte.MAX_VALUE; i++) {
         assertEquals(i, Byte.hashCode((byte) i));
       }
+      // Test unused invoke.
+      Byte.hashCode((byte) 1);
     }
 
     private static void testCompare() {
