I think all the following forms should be accepted: void main() { auto i1 = int.init; // OK auto s1 = string.init; // OK auto a1 = int[].init; // Error auto a2 = (int[]).init; // OK auto aa1 = int[int].init; // Error auto aa2 = (int[int]).init; // OK } See also Issue 6408
THIS ISSUE HAS BEEN MOVED TO GITHUB https://github.com/dlang/dmd/issues/18719 DO NOT COMMENT HERE ANYMORE, NOBODY WILL SEE IT, THIS ISSUE HAS BEEN MOVED TO GITHUB