* expression.cs (ArrayAccess.EmitAssign): Mimic the same test from
EmitDynamicInitializers for the criteria to use Ldelema. Thanks
to hwang_rob@yahoo.ca for finding the bug and providing a patch.
svn path=/trunk/mcs/; revision=7816
2002-09-25 Miguel de Icaza <miguel@ximian.com>
+ * expression.cs (ArrayAccess.EmitAssign): Mimic the same test from
+ EmitDynamicInitializers for the criteria to use Ldelema. Thanks
+ to hwang_rob@yahoo.ca for finding the bug and providing a patch.
+
* ecore.cs (TryImplicitIntConversion): When doing an
implicit-enumeration-conversion, check if the type is 64-bits and
perform a conversion before passing to EnumConstant.
// pair
//
if (rank == 1){
- if (t.IsValueType && !TypeManager.IsBuiltinType (t))
+ if (t.IsSubclassOf (TypeManager.value_type) && (!TypeManager.IsBuiltinType (t) || t == TypeManager.decimal_type))
ig.Emit (OpCodes.Ldelema, t);
}