| /* |
| TEST_OUTPUT: |
| --- |
| fail_compilation/fail8373.d(21): Error: `fail8373.fun1` called with argument types `(int)` matches both: |
| fail_compilation/fail8373.d(15): `fail8373.fun1!().fun1!int.fun1(int)` |
| and: |
| fail_compilation/fail8373.d(16): `fail8373.fun1!int.fun1(int)` |
| fail_compilation/fail8373.d(22): Error: `fail8373.fun2` called with argument types `(int)` matches both: |
| fail_compilation/fail8373.d(18): `fail8373.fun2!int.fun2(int)` |
| and: |
| fail_compilation/fail8373.d(19): `fail8373.fun2!().fun2!int.fun2(int)` |
| --- |
| */ |
| |
| template fun1(a...) { auto fun1(T...)(T args){ return 1; } } |
| auto fun1(T...)(T args){ return 2; } |
| |
| auto fun2(T...)(T args){ return 2; } |
| template fun2(a...) { auto fun2(T...)(T args){ return 1; } } |
| |
| enum x1 = fun1(0); |
| enum x2 = fun2(0); |