> To avoid troubles in generic code you need a little workaround: > if (__traits(isUnsigned, x) || x >= 0) { ... That's not good enough yet. The first part of the test needs to be done in a static if. Bye, bearophile