The following code throws a System.InvalidCastException:
enum MyEnum : int {}
class Bug
{
public static void Main()
{
int[] a1 = (int[])(object)new MyEnum[1];
MyEnum[] a2 = (MyEnum[])(object)new MyEnum[1];
}
}
Partition III section 4.3 (castclass) explicitly allows this conversion.
Regards,
Jeroen