On Sunday, 25 November 2012 at 16:42:03 UTC, Maxim Fomin wrote:
Recently I saw a major pull affecting this behavior, so in 2.061 the situation may be changed (I haven't bother to figure yet). In practice this makes a tricky thing to understand what S() is and creates a problem when you e.x. heavily use struct ctor, write opCall method and everything breaks due to dmd tries now to call opCall instead of ctor.

Looks like something was fixed with 2.061, the sample code now refuses to compile, which is correct behavior.

void main() {
    auto a = A(42);
}

source/main.d(10): Error: need 'this' for opCall type void(int i)

--rt

Reply via email to