1 /* 2 TEST_OUTPUT: 3 ---- 4 fail_compilation/ice12727.d(16): Error: alias ice12727.IndexTuple!(1, 0).IndexTuple recursive alias declaration 5 fail_compilation/ice12727.d(23): Error: template instance ice12727.IndexTuple!(1, 0) error instantiating 6 fail_compilation/ice12727.d(27): instantiated from here: Matrix!(float, 3) 7 fail_compilation/ice12727.d(28): instantiated from here: Vector!(float, 3) 8 ---- 9 */ 10 11 template IndexTuple(int e, int s = 0, T...) 12 { 13 static if (s == e) 14 alias IndexTuple = T; 15 else 16 alias IndexTuple = IndexTuple!(e); 17 } 18 19 struct Matrix(T, int N = M) 20 { decomposeLUPMatrix21 pure decomposeLUP() 22 { 23 foreach (j; IndexTuple!(1)) {} 24 } 25 } 26 27 alias Vector(T, int M) = Matrix!(T, M); 28 alias Vector3 = Vector!(float, 3); 29