| Index: runtime/vm/code_generator_ia32.cc
|
| ===================================================================
|
| --- runtime/vm/code_generator_ia32.cc (revision 6541)
|
| +++ runtime/vm/code_generator_ia32.cc (working copy)
|
| @@ -1750,6 +1750,11 @@
|
| __ CompareObject(EDX, Type::ZoneHandle(Type::NumberInterface()));
|
| __ j(EQUAL, &done, Assembler::kNearJump);
|
| __ Bind(¬_smi);
|
| + // The instantiated type parameter may not be a Type, but could be an
|
| + // InstantiatedType. It is therefore necessary to check its class.
|
| + __ movl(ECX, FieldAddress(EDX, Object::class_offset()));
|
| + __ CompareObject(ECX, Object::ZoneHandle(Object::type_class()));
|
| + __ j(NOT_EQUAL, &fall_through, Assembler::kNearJump);
|
| __ movl(EDX, FieldAddress(EDX, Type::type_class_offset()));
|
| __ movl(ECX, FieldAddress(EDX, Class::type_parameters_offset()));
|
| // Check that class of dst_type has no type parameters.
|
|
|