Enable assertions on bootstrap tests

This also fixes a small bug where constant replacements did not always
get local debug info.

Bug: 122454269
Change-Id: I19f8cf0ff1dc90e4798128ce9b43644d98e4d9b6
diff --git a/src/main/java/com/android/tools/r8/ir/optimize/MemberValuePropagation.java b/src/main/java/com/android/tools/r8/ir/optimize/MemberValuePropagation.java
index e08e9c4..41faa04 100644
--- a/src/main/java/com/android/tools/r8/ir/optimize/MemberValuePropagation.java
+++ b/src/main/java/com/android/tools/r8/ir/optimize/MemberValuePropagation.java
@@ -95,15 +95,11 @@
 
   private static ConstNumber createConstNumberReplacement(
       IRCode code, long constant, TypeLatticeElement typeLattice, DebugLocalInfo debugLocalInfo) {
-    ConstNumber replacement;
-    if (typeLattice.isReference()) {
-      assert constant == 0;
-      replacement = code.createConstNull();
-    } else {
-      Value returnedValue = code.createValue(typeLattice, debugLocalInfo);
-      replacement = new ConstNumber(returnedValue, constant);
-    }
-    return replacement;
+    assert !typeLattice.isReference() || constant == 0;
+    Value returnedValue =
+        code.createValue(
+            typeLattice.isReference() ? TypeLatticeElement.NULL : typeLattice, debugLocalInfo);
+    return new ConstNumber(returnedValue, constant);
   }
 
   private void setValueRangeFromProguardRule(ProguardMemberRule rule, Value value) {
diff --git a/src/test/java/com/android/tools/r8/ExternalR8TestBuilder.java b/src/test/java/com/android/tools/r8/ExternalR8TestBuilder.java
index 3b5ddd8..e9d85be 100644
--- a/src/test/java/com/android/tools/r8/ExternalR8TestBuilder.java
+++ b/src/test/java/com/android/tools/r8/ExternalR8TestBuilder.java
@@ -76,6 +76,7 @@
       Collections.addAll(
           command,
           getJavaExecutable(),
+          "-ea",
           "-cp",
           r8jar.toAbsolutePath().toString(),
           R8.class.getTypeName(),