function overrides but is not covariant
Timon Gehr
timon.gehr at gmx.ch
Mon Apr 29 04:40:45 PDT 2013
On 04/28/2013 09:45 PM, Namespace wrote:
> That surprised me a bit. Is that expected?
>
> ----
> import std.stdio;
>
> struct A { }
>
> interface IFoo {
> void bar(ref const A);
> }
>
> class Foo : IFoo {
> void bar(ref const A a) {
>
> }
>
> void bar(const A a) {
> return this.bar(a);
> }
> }
> ----
> prints:
>
> Error: function c517.Foo.bar of type void(const(A) a) overrides but is
> not covariant with c517.IFoo.bar of type void(ref const(A))
Seems to be a bug.
More information about the Digitalmars-d-learn
mailing list