When compiling the following code: class A { void opDispatch (string name, this T) () { } } class B : A {} void main () { auto b = new B; b.foobar(); } I get this error: Error: template instance opDispatch!("foobar") does not match template declaration opDispatch(string name,this T) DMD v2.051
Probably depends on issue 5886.
https://github.com/D-Programming-Language/dmd/pull/267
https://github.com/D-Programming-Language/dmd/commit/804f614e25ac7ff28d481c80e0bd71f65d3a6ec4