If __int128 is supported then __int_traits<__int128> is guaranteed to be specialized, so we can remove the preprocessor condition inside the std::numeric_traits<__detail::__max_size_type> specialization. Simply using __int_traits<_Sp::__rep> gives the right answer. Signed-off-by: Jonathan Wakely libstdc++-v3/ChangeLog: * include/bits/max_size_type.h (numeric_limits<__max_size_type>): Use __int_traits unconditionally. Tested powerpc64le-linux. Committed to trunk.