On Saturday, 12 April 2014 at 11:48:36 UTC, Jack Applegame wrote:
Why this code doesn't want to compile?

import std.algorithm;
import std.array;

struct Foo {
        int a;
        this(int v) {}
        alias a this;
}

void main() {
        immutable(Foo)[] foo;
        auto arr = array(foo.filter!(o => true));
}

http://dpaste.dzfl.pl/25572b0f6d0b

Maybe, because compiler cannot distinguish between default constructor which takes int and your one, which also takes int.

Reply via email to