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