new_storey = Convert.ImplicitConversionRequired (ec, new_storey, host_method.MemberType, loc);
if (TypeManager.int_interlocked_compare_exchange == null) {
- Type t = TypeManager.CoreLookupType (ec.Compiler, "System.Threading", "Interlocked", Kind.Class, true);
+ Type t = TypeManager.CoreLookupType (ec.Compiler, "System.Threading", "Interlocked", MemberKind.Class, true);
if (t != null) {
TypeManager.int_interlocked_compare_exchange = TypeManager.GetPredefinedMethod (
t, "CompareExchange", loc, TypeManager.int32_type,
ig.Emit (OpCodes.Ldflda, host.PC.Spec.MetaInfo);
IntConstant.EmitInt (ig, (int) Iterator.State.Start);
IntConstant.EmitInt (ig, (int) Iterator.State.Uninitialized);
- ig.Emit (OpCodes.Call, TypeManager.int_interlocked_compare_exchange);
+ ig.Emit (OpCodes.Call, (MethodInfo) TypeManager.int_interlocked_compare_exchange.MetaInfo);
IntConstant.EmitInt (ig, (int) Iterator.State.Uninitialized);
ig.Emit (OpCodes.Bne_Un_S, label_init);
protected override Expression DoResolve (ResolveContext ec)
{
- Methods = new MethodBase [] { method.MethodBuilder };
+ Methods = new [] { method.Spec };
type = method.Parent.TypeBuilder;
InstanceExpression = new CompilerGeneratedThis (type, Location);
return base.DoResolve (ec);
reset.Block = new ToplevelBlock (Compiler, Location);
- Type ex_type = TypeManager.CoreLookupType (Compiler, "System", "NotSupportedException", Kind.Class, true);
+ Type ex_type = TypeManager.CoreLookupType (Compiler, "System", "NotSupportedException", MemberKind.Class, true);
if (ex_type == null)
return;