On Mon, 24 Nov 2014 06:56:08 +0000 Andre via Digitalmars-d-learn <digitalmars-d-learn@puremagic.com> wrote:
> Hi, > > in following example the @property method needs the () > otherwise compiler error for row 24 is thrown. > I cannot judge, whether the compiler behaves correct or not. > > Kind regards > André > > --- > > alias fnError = void delegate(string s); > > interface IfSession > { > @property fnError addError(); > } > > class Session: IfSession > { > private fnError _addError; > > @property fnError addError() > { > return _addError; > } > } > > void main() > { > auto session = new Session(); > session._addError = delegate(s){}; > > session.addError()("test"); // Works > session.addError("test"); // Does not work > } a known thing. not sure if this is a known *bug* (seems that almost nobody cares). compiler is obviously wrong here (and i believe that it's wrong to accept `()` for properties at all), but i don't know if this will ever be fixed.
signature.asc
Description: PGP signature