| /* |
| TEST_OUTPUT: |
| --- |
| fail_compilation/diag1566.d(23): Error: multiple ! arguments are not allowed |
| fail_compilation/diag1566.d(24): Error: multiple ! arguments are not allowed |
| fail_compilation/diag1566.d(25): Error: multiple ! arguments are not allowed |
| fail_compilation/diag1566.d(26): Error: multiple ! arguments are not allowed |
| fail_compilation/diag1566.d(28): Error: multiple ! arguments are not allowed |
| fail_compilation/diag1566.d(29): Error: multiple ! arguments are not allowed |
| --- |
| */ |
| |
| template T(int n) |
| { |
| template T(char c) |
| { |
| alias long T; |
| } |
| } |
| |
| void main() |
| { |
| static assert(is(long == T!(3)!('b'))); |
| static assert(is(long == T! 3 ! 'b' )); |
| static assert(is(long == T!(3)! 'b' )); |
| static assert(is(long == T! 3 !('b'))); |
| |
| static assert(is(long == T!(3)! 'b' !"s")); |
| static assert(is(long == T! 3 !('b')!"s")); |
| } |