[mcs] Type parameter hidden methods should consider default parameters. Fixes #28651
[mono.git] / mcs / mcs / parameter.cs
index adac136fdc07b1600a751e9f0fef356b019541e8..f036c4254e35aaeb291d6546d2ace66323b76af4 100644 (file)
@@ -958,6 +958,19 @@ namespace Mono.CSharp {
                        return sb.ToString ();
                }
 
+               public static bool HasSameParameterDefaults (AParametersCollection a, AParametersCollection b)
+               {
+                       if (a == null)
+                               return b == null;
+
+                       for (int i = 0; i < a.Count; ++i) {
+                               if (a.FixedParameters [i].HasDefaultValue != b.FixedParameters [i].HasDefaultValue)
+                                       return false;
+                       }
+
+                       return true;
+               }
+
                public bool HasArglist {
                        get { return has_arglist; }
                }