Index: src/objects.cc |
diff --git a/src/objects.cc b/src/objects.cc |
index 95b2b062866bf71c34a0a3d416e77cdfed8d5b41..224f71a840d256fa5291de968465aa494b9ba52c 100644 |
--- a/src/objects.cc |
+++ b/src/objects.cc |
@@ -8520,6 +8520,10 @@ bool DescriptorArray::IsMoreGeneralThan(int verbatim, |
if (details.type() == CONSTANT) { |
if (other_details.type() != CONSTANT) return false; |
if (GetValue(descriptor) != other->GetValue(descriptor)) return false; |
+ } else if (details.type() == FIELD && other_details.type() == FIELD) { |
+ if (!other->GetFieldType(descriptor)->NowIs(GetFieldType(descriptor))) { |
+ return false; |
+ } |
} |
} |