In order to do that, we need to somehow unify the following unrelated > types:
std::integral_constant
boost::integral_constant boost::mpl::integral_c Otherwise, it'll break the world, as most usages of type traits are either via tag dispatching or enable_if.
I've already suggested a way to do that. Namely, integral constant types of type T and value v need to acquire a converting constructor from anything of type U for which U::value == v.
As explained in http://lists.boost.org/Archives/boost/2014/06/214248.php
I think these suggestions put the cart before the horse - if only "modern" compilers are to be supported - and most of these techniques seem to require something reasonably modern - then most of the type_traits dependencies could be removed anyway. So.... what is the minimal compiler requirement to be? John.