On Tuesday, 29 September 2015 at 09:11:15 UTC, John Colvin wrote: > Welcome to the weird and wonderful work of > http://dlang.org/expression.html#IsExpression No, use template pattern matching instead: struct A(int s){} template B(T:A!s, int s){ enum B=s; } static assert(B!(A!4)==4);