Convert negative precision to zero in printf (#1127)
and remove redundant check in grisu2_prettify.
diff --git a/include/fmt/printf.h b/include/fmt/printf.h
index dd55313..f75f10a 100644
--- a/include/fmt/printf.h
+++ b/include/fmt/printf.h
@@ -44,7 +44,7 @@
int operator()(T value) {
if (!int_checker<std::numeric_limits<T>::is_signed>::fits_in_int(value))
FMT_THROW(format_error("number is too big"));
- return static_cast<int>(value);
+ return (std::max)(static_cast<int>(value), 0);
}
template <typename T, FMT_ENABLE_IF(!std::is_integral<T>::value)>