@@ -695,39 +695,37 @@ class basic_specs {
695695 char fill_data_[max_fill_size] = {' ' };
696696
697697 FMT_CONSTEXPR void set_fill_size (size_t size) {
698- data_ = (data_ & ~fill_size_mask) |
699- (static_cast <unsigned >(size) << fill_size_shift);
698+ data_ = (data_ & ~fill_size_mask) | (unsigned (size) << fill_size_shift);
700699 }
701700
702701 public:
703702 constexpr auto type () const -> presentation_type {
704703 return static_cast <presentation_type>(data_ & type_mask);
705704 }
706705 FMT_CONSTEXPR void set_type (presentation_type t) {
707- data_ = (data_ & ~type_mask) | static_cast < unsigned > (t);
706+ data_ = (data_ & ~type_mask) | unsigned (t);
708707 }
709708
710709 constexpr auto align () const -> align {
711710 return static_cast <fmt::align>((data_ & align_mask) >> align_shift);
712711 }
713712 FMT_CONSTEXPR void set_align (fmt::align a) {
714- data_ = (data_ & ~align_mask) | (static_cast < unsigned > (a) << align_shift);
713+ data_ = (data_ & ~align_mask) | (unsigned (a) << align_shift);
715714 }
716715
717716 constexpr auto dynamic_width () const -> arg_id_kind {
718717 return static_cast <arg_id_kind>((data_ & width_mask) >> width_shift);
719718 }
720719 FMT_CONSTEXPR void set_dynamic_width (arg_id_kind w) {
721- data_ = (data_ & ~width_mask) | (static_cast < unsigned > (w) << width_shift);
720+ data_ = (data_ & ~width_mask) | (unsigned (w) << width_shift);
722721 }
723722
724723 FMT_CONSTEXPR auto dynamic_precision () const -> arg_id_kind {
725724 return static_cast <arg_id_kind>((data_ & precision_mask) >>
726725 precision_shift);
727726 }
728727 FMT_CONSTEXPR void set_dynamic_precision (arg_id_kind p) {
729- data_ = (data_ & ~precision_mask) |
730- (static_cast <unsigned >(p) << precision_shift);
728+ data_ = (data_ & ~precision_mask) | (unsigned (p) << precision_shift);
731729 }
732730
733731 constexpr auto dynamic () const -> bool {
@@ -738,7 +736,7 @@ class basic_specs {
738736 return static_cast <fmt::sign>((data_ & sign_mask) >> sign_shift);
739737 }
740738 FMT_CONSTEXPR void set_sign (fmt::sign s) {
741- data_ = (data_ & ~sign_mask) | (static_cast < unsigned > (s) << sign_shift);
739+ data_ = (data_ & ~sign_mask) | (unsigned (s) << sign_shift);
742740 }
743741
744742 constexpr auto upper () const -> bool { return (data_ & uppercase_mask) != 0 ; }
@@ -768,9 +766,8 @@ class basic_specs {
768766
769767 template <typename Char> constexpr auto fill_unit () const -> Char {
770768 using uchar = unsigned char ;
771- return static_cast <Char>(static_cast <uchar>(fill_data_[0 ]) |
772- (static_cast <uchar>(fill_data_[1 ]) << 8 ) |
773- (static_cast <uchar>(fill_data_[2 ]) << 16 ));
769+ return Char (uchar (fill_data_[0 ]) | uchar (fill_data_[1 ]) << 8 |
770+ uchar (fill_data_[2 ]) << 16 );
774771 }
775772
776773 FMT_CONSTEXPR void set_fill (char c) {
@@ -784,14 +781,13 @@ class basic_specs {
784781 set_fill_size (size);
785782 if (size == 1 ) {
786783 unsigned uchar = static_cast <detail::unsigned_char<Char>>(s[0 ]);
787- fill_data_[0 ] = static_cast < char > (uchar);
788- fill_data_[1 ] = static_cast < char > (uchar >> 8 );
789- fill_data_[2 ] = static_cast < char > (uchar >> 16 );
784+ fill_data_[0 ] = char (uchar);
785+ fill_data_[1 ] = char (uchar >> 8 );
786+ fill_data_[2 ] = char (uchar >> 16 );
790787 return ;
791788 }
792789 FMT_ASSERT (size <= max_fill_size, " invalid fill" );
793- for (size_t i = 0 ; i < size; ++i)
794- fill_data_[i & 3 ] = static_cast <char >(s[i]);
790+ for (size_t i = 0 ; i < size; ++i) fill_data_[i & 3 ] = char (s[i]);
795791 }
796792
797793 FMT_CONSTEXPR void copy_fill_from (const basic_specs& specs) {
@@ -998,9 +994,9 @@ constexpr auto is_arithmetic_type(type t) -> bool {
998994 return t > type::none_type && t <= type::last_numeric_type;
999995}
1000996
1001- constexpr auto set (type rhs) -> int { return 1 << static_cast < int > (rhs); }
997+ constexpr auto set (type rhs) -> int { return 1 << int (rhs); }
1002998constexpr auto in (type t, int set) -> bool {
1003- return ((set >> static_cast < int > (t)) & 1 ) != 0 ;
999+ return ((set >> int (t)) & 1 ) != 0 ;
10041000}
10051001
10061002// Bitsets of types.
@@ -1260,7 +1256,7 @@ template <typename Char = char> struct dynamic_format_specs : format_specs {
12601256// Converts a character to ASCII. Returns '\0' on conversion failure.
12611257template <typename Char, FMT_ENABLE_IF(std::is_integral<Char>::value)>
12621258constexpr auto to_ascii (Char c) -> char {
1263- return c <= 0xff ? static_cast < char > (c) : ' \0 ' ;
1259+ return c <= 0xff ? char (c) : ' \0 ' ;
12641260}
12651261
12661262// Returns the number of code units in a code point or 1 on error.
@@ -1286,13 +1282,13 @@ FMT_CONSTEXPR auto parse_nonnegative_int(const Char*& begin, const Char* end,
12861282 } while (p != end && ' 0' <= *p && *p <= ' 9' );
12871283 auto num_digits = p - begin;
12881284 begin = p;
1289- int digits10 = static_cast < int > (sizeof (int ) * CHAR_BIT * 3 / 10 );
1290- if (num_digits <= digits10) return static_cast < int > (value);
1285+ int digits10 = int (sizeof (int ) * CHAR_BIT * 3 / 10 );
1286+ if (num_digits <= digits10) return int (value);
12911287 // Check for overflow.
12921288 unsigned max = INT_MAX;
12931289 return num_digits == digits10 + 1 &&
12941290 prev * 10ull + unsigned (p[-1 ] - ' 0' ) <= max
1295- ? static_cast < int > (value)
1291+ ? int (value)
12961292 : error_value;
12971293}
12981294
@@ -2230,7 +2226,7 @@ template <typename> constexpr auto encode_types() -> ullong { return 0; }
22302226
22312227template <typename Context, typename First, typename ... T>
22322228constexpr auto encode_types () -> ullong {
2233- return static_cast < unsigned > (stored_type_constant<First, Context>::value) |
2229+ return unsigned (stored_type_constant<First, Context>::value) |
22342230 (encode_types<Context, T...>() << packed_arg_bits);
22352231}
22362232
@@ -2247,9 +2243,8 @@ using arg_t = conditional_t<NUM_ARGS <= max_packed_args, value<Context>,
22472243template <typename Context, int NUM_ARGS, int NUM_NAMED_ARGS, ullong DESC>
22482244struct named_arg_store {
22492245 // args_[0].named_args points to named_args to avoid bloating format_args.
2250- arg_t <Context, NUM_ARGS> args[1u + NUM_ARGS];
2251- named_arg_info<typename Context::char_type>
2252- named_args[static_cast <size_t >(NUM_NAMED_ARGS)];
2246+ arg_t <Context, NUM_ARGS> args[NUM_ARGS + 1u ];
2247+ named_arg_info<typename Context::char_type> named_args[NUM_NAMED_ARGS + 0u ];
22532248
22542249 template <typename ... T>
22552250 FMT_CONSTEXPR FMT_ALWAYS_INLINE named_arg_store (T&... values)
@@ -2530,7 +2525,7 @@ template <typename Context> class basic_format_args {
25302525 if (id < max_size ()) arg = args_[id];
25312526 return arg;
25322527 }
2533- if (static_cast < unsigned > (id) >= detail::max_packed_args) return arg;
2528+ if (unsigned (id) >= detail::max_packed_args) return arg;
25342529 arg.type_ = type (id);
25352530 if (arg.type_ != detail::type::none_type) arg.value_ = values_[id];
25362531 return arg;
@@ -2554,8 +2549,8 @@ template <typename Context> class basic_format_args {
25542549 }
25552550
25562551 auto max_size () const -> int {
2557- return static_cast < int > (is_packed () ? ullong (detail::max_packed_args)
2558- : desc_ & ~detail::is_unpacked_bit);
2552+ return int (is_packed () ? ullong (detail::max_packed_args)
2553+ : desc_ & ~detail::is_unpacked_bit);
25592554 }
25602555};
25612556
@@ -2620,7 +2615,7 @@ template <typename... T> struct fstring {
26202615 detail::count_static_named_args<T...>();
26212616
26222617 using checker = detail::format_string_checker<
2623- char , static_cast < int > (sizeof ...(T)), num_static_named_args,
2618+ char , int (sizeof ...(T)), num_static_named_args,
26242619 num_static_named_args != detail::count_named_args<T...>()>;
26252620
26262621 using arg_pack = detail::arg_pack<T...>;
0 commit comments