Charles McAnany:
this(int x){} this(T)(T x) if(!is(T == int)){} } void main(){}But this does not compile because the two constructors conflict:
Try adding the negative constraint: this(T)(in T x) pure nothrow if(is(T == int)) {} this(T)(in T x) pure nothrow if(!is(T == int)) {} Bye, bearophile