It took me a while to narrow this down:

struct Foo
{
    int val = int.init;
    this(inout(int) nval) inout {
        this.val = nval;
    }
}

test.d(18): Error: cannot modify const/immutable/inout expression this.val

Is there any special reason why this should be disallowed? I mean the
same thing happens if you do a void initialization: int val = void;

A bug?

Reply via email to