https://issues.dlang.org/show_bug.cgi?id=13827
--- Comment #1 from Temtaime <temta...@gmail.com> --- Reduced more: struct Matrix(T, uint N) { private static defaultMatrix() { T arr[N]; return arr; } union { T[N] A = defaultMatrix; T[N] flat; } this(A...)(auto ref in A args) { uint k; foreach(ref v; args) flat[k++] = cast(T)v; } } enum S = Matrix!(int, 3)(1, 2, 3); --