X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=mcs%2Fmcs%2Fecore.cs;h=8563f28a212ce5cc0e2a06eeeec0c276788738df;hb=17085447d7469cbe929a10e3a2a4979d0aba7d42;hp=6d2422772e80149bbb3f2b568cd1556f4f377e5d;hpb=31867279a7b90c67e33096213622f9de46fd5ac4;p=mono.git diff --git a/mcs/mcs/ecore.cs b/mcs/mcs/ecore.cs index 6d2422772e8..8563f28a212 100644 --- a/mcs/mcs/ecore.cs +++ b/mcs/mcs/ecore.cs @@ -2527,7 +2527,7 @@ namespace Mono.CSharp { // Overload resulution works on virtual or non-virtual members only (no overrides). That // means for base.member access we have to find the closest match after we found best candidate // - if ((method.Modifiers & (Modifiers.ABSTRACT | Modifiers.VIRTUAL | Modifiers.STATIC)) != Modifiers.STATIC) { + if ((method.Modifiers & (Modifiers.ABSTRACT | Modifiers.VIRTUAL | Modifiers.OVERRIDE)) != 0) { // // The method could already be what we are looking for // @@ -2772,7 +2772,7 @@ namespace Mono.CSharp { public virtual MemberExpr ResolveMemberAccess (ResolveContext ec, Expression left, SimpleName original) { - if (left != null && left.IsNull && TypeManager.IsReferenceType (left.Type)) { + if (left != null && left.IsNull && TypeSpec.IsReferenceType (left.Type)) { ec.Report.Warning (1720, 1, left.Location, "Expression will always cause a `{0}'", "System.NullReferenceException"); } @@ -2784,9 +2784,9 @@ namespace Mono.CSharp { protected void EmitInstance (EmitContext ec, bool prepare_for_load) { TypeSpec instance_type = InstanceExpression.Type; - if (TypeManager.IsValueType (instance_type)) { + if (TypeSpec.IsValueType (instance_type)) { if (InstanceExpression is IMemoryLocation) { - ((IMemoryLocation) InstanceExpression).AddressOf (ec, AddressOp.LoadStore); + ((IMemoryLocation) InstanceExpression).AddressOf (ec, AddressOp.Load); } else { LocalTemporary t = new LocalTemporary (instance_type); InstanceExpression.Emit (ec); @@ -2797,7 +2797,7 @@ namespace Mono.CSharp { InstanceExpression.Emit (ec); // Only to make verifier happy - if (instance_type.IsGenericParameter && !(InstanceExpression is This) && TypeManager.IsReferenceType (instance_type)) + if (instance_type.IsGenericParameter && !(InstanceExpression is This) && TypeSpec.IsReferenceType (instance_type)) ec.Emit (OpCodes.Box, instance_type); } @@ -3381,7 +3381,7 @@ namespace Mono.CSharp { // // With identical parameter lists // - if (!TypeSpecComparer.Equals (p_m.Parameters.Types,q_m.Parameters.Types)) + if (!TypeSpecComparer.Equals (p_m.Parameters.Types, q_m.Parameters.Types)) return 0; p = p_m.ReturnType; @@ -4795,7 +4795,7 @@ namespace Mono.CSharp { public bool IsMarshalByRefAccess (ResolveContext rc) { // Checks possible ldflda of field access expression - return !spec.IsStatic && TypeManager.IsValueType (spec.MemberType) && !(InstanceExpression is This) && + return !spec.IsStatic && TypeSpec.IsValueType (spec.MemberType) && !(InstanceExpression is This) && rc.Module.PredefinedTypes.MarshalByRefObject.Define () && TypeSpec.IsBaseClass (spec.DeclaringType, rc.Module.PredefinedTypes.MarshalByRefObject.TypeSpec, false); }