Merge commit '6028f34820642d2483ed5afe91c05c36f952282e' into dev-release
diff --git a/src/main/java/com/android/tools/r8/ir/analysis/type/ArrayTypeElement.java b/src/main/java/com/android/tools/r8/ir/analysis/type/ArrayTypeElement.java
index c283797..549bbf2 100644
--- a/src/main/java/com/android/tools/r8/ir/analysis/type/ArrayTypeElement.java
+++ b/src/main/java/com/android/tools/r8/ir/analysis/type/ArrayTypeElement.java
@@ -28,6 +28,7 @@
Nullability nullability,
NullabilityVariants<ArrayTypeElement> variants) {
super(nullability);
+ assert memberTypeLattice.isPrimitiveType() || memberTypeLattice.nullability().isMaybeNull();
this.memberTypeLattice = memberTypeLattice;
this.variants = variants;
}
@@ -190,7 +191,7 @@
aMemberMember,
bMemberMember,
appView,
- aMemberMember.nullability().join(bMemberMember.nullability()));
+ aMember.nullability().join(bMember.nullability()));
return join == null ? null : ArrayTypeElement.create(join, nullability);
}
if (aMember.isClassType() && bMember.isClassType()) {
diff --git a/src/test/java/com/android/tools/r8/ir/analysis/type/TypeLatticeTest.java b/src/test/java/com/android/tools/r8/ir/analysis/type/TypeLatticeTest.java
index 3e83719..4f8c88c 100644
--- a/src/test/java/com/android/tools/r8/ir/analysis/type/TypeLatticeTest.java
+++ b/src/test/java/com/android/tools/r8/ir/analysis/type/TypeLatticeTest.java
@@ -395,7 +395,7 @@
array(
element(
factory.objectType,
- definitelyNotNull(),
+ maybeNull(),
factory.cloneableType,
factory.serializableType))),
join(array(3, factory.intType), array(3, factory.floatType)));