On Wed, 03 Nov 2010 13:57:09 -0400, Benjamin Thaut <c...@benjamin-thaut.de> wrote:

Am 03.11.2010 13:07, schrieb zhang:
This code belown can be compiled with DMD 2.050. However, it throws an error message:
core.exception.HiddenFuncError: Hidden method called for main.AClass

I'm not sure about whether it is a bug. Thanks for any help.
[snip]

I'm not shure if it is a bug or not, but to fix it you could add "alias object.opEquals opEquals;" before your first opEquals. Had that already many times, it also happens a lot with opCmp.

First, it's not a bug, you should only ever override with bool opEquals(Object). Second, using the alias trick does not work for opEquals. x == y *specifically* calls (cast(Object)x).opEquals(cast(Object)y). So if you did that, your override would never be called.

-Steve

Reply via email to