Template:cpp/utility/compare/dsc compare partial order fallback