-Fix dynamic code generation IL verification issues in .NET 4

This commit is contained in:
JamesNK
2010-03-02 10:27:54 +00:00
parent d93aaf9707
commit 3b80e9d25f
@@ -183,18 +183,24 @@ namespace Newtonsoft.Json.Utilities
generator.Emit(OpCodes.Ldarg_0);
if (type.IsValueType)
generator.Emit(OpCodes.Unbox, type);
else
generator.Emit(OpCodes.Castclass, type);
}
static void BoxIfNeeded(this ILGenerator generator, Type type)
{
if (type.IsValueType)
generator.Emit(OpCodes.Box, type);
else
generator.Emit(OpCodes.Castclass, type);
}
static void UnboxIfNeeded(this ILGenerator generator, Type type)
{
if (type.IsValueType)
generator.Emit(OpCodes.Unbox_Any, type);
else
generator.Emit(OpCodes.Castclass, type);
}
public static Func<T, object> CreateGet<T>(FieldInfo fieldInfo)