This is Xamarin's bug tracking system. For product support, please use the support links listed in your Xamarin Account.
Bug 8283 - overloaded method from base class is 'lost' -- mcs thinks subclass doesn't implement interfact
Summary: overloaded method from base class is 'lost' -- mcs thinks subclass doesn't im...
Alias: None
Product: Compilers
Classification: Mono
Component: C# (show other bugs)
Version: unspecified
Hardware: PC Linux
: --- normal
Target Milestone: ---
Assignee: Marek Safar
Depends on:
Reported: 2012-11-08 12:28 UTC by Patrick Marks
Modified: 2012-11-11 03:29 UTC (History)
1 user (show)

See Also:
Is this bug a regression?: ---
Last known good build:


Description Patrick Marks 2012-11-08 12:28:01 UTC
Overloaded methods from a base class don't get 'lost' when they are required to implement an interface on a subclass.
Works correctly in mono-2.10 and .NET.

Version: fresh build from github master.

dmcs /target:library /out:blah.dll Test.cs

Test.cs(25,18): error CS0738: `Test.Subclass' does not implement interface member `Test.IInterface.Get(string, string)' and the best implementing candidate `Test.BaseClass.Get(string, int)' return type `int' does not match interface member return type `string'
Test.cs(7,9): (Location of the symbol related to previous error)
Test.cs(19,13): (Location of the symbol related to previous error)
Compilation failed: 1 error(s), 0 warnings


namespace Test
    public interface IInterface
        string Get(string key, string v);
        int Get(string key, int v);

    public class BaseClass
        public string Get(string key, string v)
            return v;

        public int Get(string key, int v)
            return 0;

    public class Subclass : BaseClass, IInterface
Comment 1 Marek Safar 2012-11-11 03:29:19 UTC
Fixed in master

Note You need to log in before you can comment on or make changes to this bug.