Author: marek
Date: 2007-12-22 14:32:22 -0500 (Sat, 22 Dec 2007)
New Revision: 91811

Modified:
   trunk/mcs/mcs/ChangeLog
   trunk/mcs/mcs/ecore.cs
Log:
2007-12-22  Marek Safar  <[EMAIL PROTECTED]>

        * ecore.cs (MethodGroupExpr.OverloadResolve): Set type arguments for
        discovered extension methods.



Modified: trunk/mcs/mcs/ChangeLog
===================================================================
--- trunk/mcs/mcs/ChangeLog     2007-12-22 18:50:30 UTC (rev 91810)
+++ trunk/mcs/mcs/ChangeLog     2007-12-22 19:32:22 UTC (rev 91811)
@@ -1,5 +1,10 @@
 2007-12-22  Marek Safar  <[EMAIL PROTECTED]>
 
+       * ecore.cs (MethodGroupExpr.OverloadResolve): Set type arguments for
+       discovered extension methods.
+
+2007-12-22  Marek Safar  <[EMAIL PROTECTED]>
+
        * ecore.cs, namespace.cs, expression.cs: Removed broken ResolveGeneric
        method.
 

Modified: trunk/mcs/mcs/ecore.cs
===================================================================
--- trunk/mcs/mcs/ecore.cs      2007-12-22 18:50:30 UTC (rev 91810)
+++ trunk/mcs/mcs/ecore.cs      2007-12-22 19:32:22 UTC (rev 91811)
@@ -3618,9 +3618,9 @@
 
 #if GMCS_SOURCE
                        //
-                       // 1. Handle generic method using type arguments when 
speficified or type inference
+                       // 1. Handle generic method using type arguments when 
specified or type inference
                        //
-                       if (TypeManager.IsGenericMethod (method)) {
+                       if (TypeManager.IsGenericMethod (candidate)) {
                                if (type_arguments != null) {
                                        Type [] g_args = 
candidate.GetGenericArguments ();
                                        if (g_args.Length != 
type_arguments.Count)
@@ -3642,7 +3642,7 @@
                                }
                        } else {
                                if (type_arguments != null)
-                                       return 8811192;
+                                       return int.MaxValue - 15000;
                        }
 #endif                 
 
@@ -3987,6 +3987,7 @@
                                        ExtensionMethodGroupExpr 
ex_method_lookup = ec.TypeContainer.LookupExtensionMethod (type, Name);
                                        if (ex_method_lookup != null) {
                                                
ex_method_lookup.ExtensionExpression = InstanceExpression;
+                                               
ex_method_lookup.SetTypeArguments (type_arguments);
                                                return 
ex_method_lookup.OverloadResolve (ec, Arguments, may_fail, loc);
                                        }
                                }

_______________________________________________
Mono-patches maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches

Reply via email to