On 06/16/2012 10:02 PM, Timon Gehr wrote:
On 06/16/2012 09:55 PM, F i L wrote:
Timon Gehr wrote:
'typeof(this)' can be used to avoid stuttering the type at the mixin
location.

mixin template Pool() { mixin Pool!(typeof(this)); }

class MyOtherClass {
    mixin Pool;
}

For some reason I was under the impression that typeof(this) couldn't be
resolved in this situation (no 'this' value),

It is indeed special cased.

class S{
     pragma(msg, typeof(this)); // ok
     pragma(msg, this.stringof);
  // Error: 'this' is only defined in non-static member functions, not S
}


That example actually compiles, but I'd consider that a bug. Removing ".stringof" makes it fail as expected.

Reply via email to