struct S {
void fun(int i, this This)() { }
void gun() {
// Works:
this.fun!0();
// Fails:
fun!0();
}
}
According to https://run.dlang.io/is/CKwb4V, this used to work up until 2.062.
Comment #1 by schveiguy — 2023-03-16T15:04:53Z
Just ran into this. I'm surprised this is still an issue.
Happens with classes as well.
```d
class C
{
void foo(this T)() {}
}
class D : C
{
void bar() { foo(); }
}
```
The error I get is:
```
onlineapp.d(8): Error: none of the overloads of template `onlineapp.C.foo` are callable using argument types `!()()`
onlineapp.d(3): Candidate is: `foo(this T)()`
```
Comment #2 by schveiguy — 2023-03-16T15:07:12Z
*** This issue has been marked as a duplicate of issue 14484 ***