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