module b20875; /* TEST_OUTPUT: --- fail_compilation/b20875.d(10): Error: template instance `Foo!int` does not match template declaration `Foo(alias T : None!U, U...)` fail_compilation/b20875.d(10): while evaluating: `static assert(Foo!int)` fail_compilation/b20875.d(11): Error: template instance `Bar!int` does not match template declaration `Bar(alias T : None!U, U...)` fail_compilation/b20875.d(11): while evaluating: `static assert(!Bar!int)` fail_compilation/b20875.d(14): Error: template parameter specialization for a type must be a type and not `NotAType()` fail_compilation/b20875.d(15): while looking for match for `Baz!int` fail_compilation/b20875.d(15): while evaluating: `static assert(!Baz!int)` --- */ #line 7 enum Foo(alias T : None!U, U...) = true; enum Bar(alias T : None!U, U...) = false; static assert( Foo!(int)); static assert(!Bar!(int)); template NotAType(){} enum Baz(alias T : NotAType) = false; static assert(!Baz!(int)); void main(){}