/* TEST_OUTPUT: --- fail_compilation/diag12487.d(15): Error: recursive expansion of template instance `diag12487.recTemplate!int` fail_compilation/diag12487.d(25): Error: template instance `diag12487.recTemplate!int` error instantiating fail_compilation/diag12487.d(18): Error: function `diag12487.recFunction` CTFE recursion limit exceeded fail_compilation/diag12487.d(20): called from here: `recFunction(i)` fail_compilation/diag12487.d(18): 1000 recursive calls to function `recFunction` fail_compilation/diag12487.d(27): called from here: `recFunction(0)` --- */ template recTemplate(T) { enum bool recTemplate = recTemplate!T; } bool recFunction(int i) { return recFunction(i); } void main() { enum bool value1 = recTemplate!int; enum bool value2 = recFunction(0); }