Don't mark unused interface methods. Fixes #10866
authorMarek Safar <marek.safar@gmail.com>
Tue, 5 Mar 2013 15:58:23 +0000 (16:58 +0100)
committerMarek Safar <marek.safar@gmail.com>
Tue, 5 Mar 2013 16:05:32 +0000 (17:05 +0100)
mcs/tools/linker/Mono.Linker.Steps/MarkStep.cs

index 804d9d6c7363eb2afe4bd49ee07aa3f958d48acf..bd96da20aac41926bdcd6f12a0458050ba1b3f14 100644 (file)
@@ -843,6 +843,9 @@ namespace Mono.Linker.Steps {
                                return;
 
                        foreach (MethodDefinition base_method in base_methods) {
+                               if (base_method.DeclaringType.IsInterface && !method.DeclaringType.IsInterface)
+                                       continue;
+
                                MarkMethod (base_method);
                                MarkBaseMethods (base_method);
                        }