On Thursday, 7 May 2015 at 10:39:09 UTC, Daniel Kozák wrote:

On Thu, 07 May 2015 10:33:44 +0000
Vadim Lopatin via Digitalmars-d-learn
<digitalmars-d-learn@puremagic.com> wrote:

struct S
{
     int i;

     auto foo2(T)(int j) {
         i=j;
     }

     static S foo(T)(int j) {
         S s;
         s.foo2!T(j);
         return s;
     }
}

void main()
{
     auto s = S.foo!bool(1);
}

As I said, it is not bug. It is OK. There is no way how you can
distinguish between static and non static methods or even field in some
cases.

e.g.:

import std.stdio;

struct S
{
        string foo = "Please select me?";
        string foo() { return ("No, select me?"); };
static string foo() { return ("I am better than the otters :D?"); };
}

void main()
{
        auto s = S();
        writeln(s.foo);
}

Reply via email to