2009-07-10 Zoltan Varga <vargaz@gmail.com>
authorZoltan Varga <vargaz@gmail.com>
Thu, 9 Jul 2009 23:05:27 +0000 (23:05 -0000)
committerZoltan Varga <vargaz@gmail.com>
Thu, 9 Jul 2009 23:05:27 +0000 (23:05 -0000)
* Binder.cs (check_arguments): Allow a type to match its byref version.
Fixes #520690.

svn path=/trunk/mcs/; revision=137663

mcs/class/corlib/System.Reflection/Binder.cs
mcs/class/corlib/System.Reflection/ChangeLog

index 91f3bf0c794dc33dba7a48806c121fccb56ef2c5..336eec8933e618a22e0880e47326f5328910303f 100644 (file)
@@ -356,7 +356,10 @@ namespace System.Reflection
 
                        private static bool check_arguments (Type[] types, ParameterInfo[] args) {
                                for (int i = 0; i < types.Length; ++i) {
-                                       if (!check_type (types [i], args [i].ParameterType))
+                                       bool match = check_type (types [i], args [i].ParameterType);
+                                       if (!match && args [i].ParameterType.IsByRef)
+                                               match = check_type (types [i], args [i].ParameterType.GetElementType ());
+                                       if (!match)
                                                return false;
                                }
                                return true;
index f5399c69ee884569c8dbe76350498d581a07782a..827d99b291741a8ebc68e585263fae5773940ed2 100644 (file)
@@ -1,3 +1,8 @@
+2009-07-10  Zoltan Varga  <vargaz@gmail.com>
+
+       * Binder.cs (check_arguments): Allow a type to match its byref version.
+       Fixes #520690.
+
 2009-06-12  Zoltan Varga  <vargaz@gmail.com>
 
        * ParameterInfo.cs (DefaultValue): Add support for decimals, their default