Index: runtime/vm/intermediate_language.h |
diff --git a/runtime/vm/intermediate_language.h b/runtime/vm/intermediate_language.h |
index 7f01ecc6de5b4576351b10fd7bbc0cb8e3311181..90cbcc439b464c92dac89eacfa559698ccc37cd4 100644 |
--- a/runtime/vm/intermediate_language.h |
+++ b/runtime/vm/intermediate_language.h |
@@ -4366,7 +4366,8 @@ class LoadFieldInstr : public TemplateDefinition<1, NoThrow> { |
field_(NULL), |
token_pos_(token_pos) { |
ASSERT(offset_in_bytes >= 0); |
- ASSERT(type.IsZoneHandle()); // May be null if field is not an instance. |
+ // May be null if field is not an instance. |
+ ASSERT(type.IsZoneHandle() || type.IsReadOnlyHandle()); |
SetInputAt(0, instance); |
} |
@@ -4382,7 +4383,8 @@ class LoadFieldInstr : public TemplateDefinition<1, NoThrow> { |
field_(field), |
token_pos_(token_pos) { |
ASSERT(field->IsZoneHandle()); |
- ASSERT(type.IsZoneHandle()); // May be null if field is not an instance. |
+ // May be null if field is not an instance. |
+ ASSERT(type.IsZoneHandle() || type.IsReadOnlyHandle()); |
SetInputAt(0, instance); |
} |
@@ -4457,7 +4459,7 @@ class InstantiateTypeInstr : public TemplateDefinition<1, Throws> { |
token_pos_(token_pos), |
type_(type), |
instantiator_class_(instantiator_class) { |
- ASSERT(type.IsZoneHandle()); |
+ ASSERT(type.IsZoneHandle() || type.IsReadOnlyHandle()); |
SetInputAt(0, instantiator); |
} |