mirror of
https://github.com/fmtlib/fmt.git
synced 2024-12-25 15:21:54 +00:00
Revert "Clean-up sign-conversion warnings in test code"
This reverts commit 227bfe62dd
.
This commit is contained in:
parent
227bfe62dd
commit
31de9a1b80
@ -277,7 +277,7 @@ TEST(FPTest, GetRoundDirection) {
|
|||||||
EXPECT_EQ(fmt::internal::up, get_round_direction(100, 51, 0));
|
EXPECT_EQ(fmt::internal::up, get_round_direction(100, 51, 0));
|
||||||
EXPECT_EQ(fmt::internal::down, get_round_direction(100, 40, 10));
|
EXPECT_EQ(fmt::internal::down, get_round_direction(100, 40, 10));
|
||||||
EXPECT_EQ(fmt::internal::up, get_round_direction(100, 60, 10));
|
EXPECT_EQ(fmt::internal::up, get_round_direction(100, 60, 10));
|
||||||
for (size_t i = 41; i < 60; ++i)
|
for (int i = 41; i < 60; ++i)
|
||||||
EXPECT_EQ(fmt::internal::unknown, get_round_direction(100, i, 10));
|
EXPECT_EQ(fmt::internal::unknown, get_round_direction(100, i, 10));
|
||||||
uint64_t max = max_value<uint64_t>();
|
uint64_t max = max_value<uint64_t>();
|
||||||
EXPECT_THROW(get_round_direction(100, 100, 0), assertion_failure);
|
EXPECT_THROW(get_round_direction(100, 100, 0), assertion_failure);
|
||||||
|
@ -1875,7 +1875,7 @@ TEST(FormatTest, Dynamic) {
|
|||||||
|
|
||||||
std::string result = fmt::vformat(
|
std::string result = fmt::vformat(
|
||||||
"{} and {} and {}", fmt::basic_format_args<ctx>(
|
"{} and {} and {}", fmt::basic_format_args<ctx>(
|
||||||
args.data(), static_cast<int>(args.size())));
|
args.data(), static_cast<unsigned>(args.size())));
|
||||||
|
|
||||||
EXPECT_EQ("42 and abc1 and 1.5", result);
|
EXPECT_EQ("42 and abc1 and 1.5", result);
|
||||||
}
|
}
|
||||||
@ -2189,12 +2189,12 @@ TEST(FormatTest, WideFormatToN) {
|
|||||||
struct test_arg_id_handler {
|
struct test_arg_id_handler {
|
||||||
enum result { NONE, EMPTY, INDEX, NAME, ERROR };
|
enum result { NONE, EMPTY, INDEX, NAME, ERROR };
|
||||||
result res = NONE;
|
result res = NONE;
|
||||||
int index = 0;
|
unsigned index = 0;
|
||||||
string_view name;
|
string_view name;
|
||||||
|
|
||||||
FMT_CONSTEXPR void operator()() { res = EMPTY; }
|
FMT_CONSTEXPR void operator()() { res = EMPTY; }
|
||||||
|
|
||||||
FMT_CONSTEXPR void operator()(int i) {
|
FMT_CONSTEXPR void operator()(unsigned i) {
|
||||||
res = INDEX;
|
res = INDEX;
|
||||||
index = i;
|
index = i;
|
||||||
}
|
}
|
||||||
@ -2230,9 +2230,9 @@ struct test_format_specs_handler {
|
|||||||
|
|
||||||
fmt::align_t align = fmt::align::none;
|
fmt::align_t align = fmt::align::none;
|
||||||
char fill = 0;
|
char fill = 0;
|
||||||
int width = 0;
|
unsigned width = 0;
|
||||||
fmt::internal::arg_ref<char> width_ref;
|
fmt::internal::arg_ref<char> width_ref;
|
||||||
int precision = 0;
|
unsigned precision = 0;
|
||||||
fmt::internal::arg_ref<char> precision_ref;
|
fmt::internal::arg_ref<char> precision_ref;
|
||||||
char type = 0;
|
char type = 0;
|
||||||
|
|
||||||
@ -2258,14 +2258,14 @@ struct test_format_specs_handler {
|
|||||||
FMT_CONSTEXPR void on_hash() { res = HASH; }
|
FMT_CONSTEXPR void on_hash() { res = HASH; }
|
||||||
FMT_CONSTEXPR void on_zero() { res = ZERO; }
|
FMT_CONSTEXPR void on_zero() { res = ZERO; }
|
||||||
|
|
||||||
FMT_CONSTEXPR void on_width(int w) { width = w; }
|
FMT_CONSTEXPR void on_width(unsigned w) { width = w; }
|
||||||
FMT_CONSTEXPR void on_dynamic_width(fmt::internal::auto_id) {}
|
FMT_CONSTEXPR void on_dynamic_width(fmt::internal::auto_id) {}
|
||||||
FMT_CONSTEXPR void on_dynamic_width(int index) { width_ref = index; }
|
FMT_CONSTEXPR void on_dynamic_width(unsigned index) { width_ref = index; }
|
||||||
FMT_CONSTEXPR void on_dynamic_width(string_view) {}
|
FMT_CONSTEXPR void on_dynamic_width(string_view) {}
|
||||||
|
|
||||||
FMT_CONSTEXPR void on_precision(int p) { precision = p; }
|
FMT_CONSTEXPR void on_precision(unsigned p) { precision = p; }
|
||||||
FMT_CONSTEXPR void on_dynamic_precision(fmt::internal::auto_id) {}
|
FMT_CONSTEXPR void on_dynamic_precision(fmt::internal::auto_id) {}
|
||||||
FMT_CONSTEXPR void on_dynamic_precision(int index) {
|
FMT_CONSTEXPR void on_dynamic_precision(unsigned index) {
|
||||||
precision_ref = index;
|
precision_ref = index;
|
||||||
}
|
}
|
||||||
FMT_CONSTEXPR void on_dynamic_precision(string_view) {}
|
FMT_CONSTEXPR void on_dynamic_precision(string_view) {}
|
||||||
@ -2302,7 +2302,7 @@ TEST(FormatTest, ConstexprParseFormatSpecs) {
|
|||||||
struct test_parse_context {
|
struct test_parse_context {
|
||||||
typedef char char_type;
|
typedef char char_type;
|
||||||
|
|
||||||
FMT_CONSTEXPR int next_arg_id() { return 11; }
|
FMT_CONSTEXPR unsigned next_arg_id() { return 11; }
|
||||||
template <typename Id> FMT_CONSTEXPR void check_arg_id(Id) {}
|
template <typename Id> FMT_CONSTEXPR void check_arg_id(Id) {}
|
||||||
|
|
||||||
FMT_CONSTEXPR const char* begin() { return nullptr; }
|
FMT_CONSTEXPR const char* begin() { return nullptr; }
|
||||||
|
@ -5,13 +5,12 @@
|
|||||||
//
|
//
|
||||||
// For the license information refer to format.h.
|
// For the license information refer to format.h.
|
||||||
|
|
||||||
#include "fmt/printf.h"
|
|
||||||
|
|
||||||
#include <cctype>
|
#include <cctype>
|
||||||
#include <climits>
|
#include <climits>
|
||||||
#include <cstring>
|
#include <cstring>
|
||||||
|
|
||||||
#include "fmt/core.h"
|
#include "fmt/core.h"
|
||||||
|
#include "fmt/printf.h"
|
||||||
#include "gtest-extra.h"
|
#include "gtest-extra.h"
|
||||||
#include "util.h"
|
#include "util.h"
|
||||||
|
|
||||||
@ -301,15 +300,15 @@ void TestLength(const char* length_spec, U value) {
|
|||||||
using fmt::internal::const_check;
|
using fmt::internal::const_check;
|
||||||
if (const_check(max <= static_cast<unsigned>(max_value<int>()))) {
|
if (const_check(max <= static_cast<unsigned>(max_value<int>()))) {
|
||||||
signed_value = static_cast<int>(value);
|
signed_value = static_cast<int>(value);
|
||||||
unsigned_value = static_cast<unsigned long long>(value);
|
unsigned_value = static_cast<unsigned>(value);
|
||||||
} else if (const_check(max <= max_value<unsigned>())) {
|
} else if (const_check(max <= max_value<unsigned>())) {
|
||||||
signed_value = static_cast<unsigned>(value);
|
signed_value = static_cast<unsigned>(value);
|
||||||
unsigned_value = static_cast<unsigned long long>(value);
|
unsigned_value = static_cast<unsigned>(value);
|
||||||
}
|
}
|
||||||
if (sizeof(U) <= sizeof(int) && sizeof(int) < sizeof(T)) {
|
if (sizeof(U) <= sizeof(int) && sizeof(int) < sizeof(T)) {
|
||||||
signed_value = static_cast<long long>(value);
|
signed_value = static_cast<long long>(value);
|
||||||
unsigned_value = static_cast<unsigned long long>(
|
unsigned_value =
|
||||||
static_cast<typename std::make_unsigned<unsigned>::type>(value));
|
static_cast<typename std::make_unsigned<unsigned>::type>(value);
|
||||||
} else {
|
} else {
|
||||||
signed_value = static_cast<typename make_signed<T>::type>(value);
|
signed_value = static_cast<typename make_signed<T>::type>(value);
|
||||||
unsigned_value = static_cast<typename std::make_unsigned<T>::type>(value);
|
unsigned_value = static_cast<typename std::make_unsigned<T>::type>(value);
|
||||||
@ -590,7 +589,7 @@ class custom_printf_arg_formatter : public formatter_t {
|
|||||||
if (round(value * pow(10, specs()->precision)) == 0.0) value = 0;
|
if (round(value * pow(10, specs()->precision)) == 0.0) value = 0;
|
||||||
return formatter_t::operator()(value);
|
return formatter_t::operator()(value);
|
||||||
}
|
}
|
||||||
}
|
};
|
||||||
|
|
||||||
typedef fmt::basic_format_args<context_t> format_args_t;
|
typedef fmt::basic_format_args<context_t> format_args_t;
|
||||||
|
|
||||||
|
15
test/scan.h
15
test/scan.h
@ -6,8 +6,6 @@
|
|||||||
// For the license information refer to format.h.
|
// For the license information refer to format.h.
|
||||||
|
|
||||||
#include <array>
|
#include <array>
|
||||||
#include <cassert>
|
|
||||||
#include <climits>
|
|
||||||
|
|
||||||
#include "fmt/format.h"
|
#include "fmt/format.h"
|
||||||
|
|
||||||
@ -137,20 +135,21 @@ struct scan_handler : error_handler {
|
|||||||
char c = *it++;
|
char c = *it++;
|
||||||
if (c < '0' || c > '9') on_error("invalid input");
|
if (c < '0' || c > '9') on_error("invalid input");
|
||||||
// TODO: check overflow
|
// TODO: check overflow
|
||||||
value = value * 10 + static_cast<unsigned>(c - '0');
|
value = value * 10 + (c - '0');
|
||||||
}
|
}
|
||||||
scan_ctx_.advance_to(it);
|
scan_ctx_.advance_to(it);
|
||||||
return value;
|
return value;
|
||||||
}
|
}
|
||||||
|
|
||||||
template <typename T = int> T read_int() {
|
template <typename T = int> T read_int() {
|
||||||
|
T value = 0;
|
||||||
auto it = scan_ctx_.begin(), end = scan_ctx_.end();
|
auto it = scan_ctx_.begin(), end = scan_ctx_.end();
|
||||||
bool negative = it != end && *it == '-';
|
bool negative = it != end && *it == '-';
|
||||||
if (negative) ++it;
|
if (negative) ++it;
|
||||||
scan_ctx_.advance_to(it);
|
scan_ctx_.advance_to(it);
|
||||||
const auto value = read_uint<typename std::make_unsigned<T>::type>();
|
value = read_uint<typename std::make_unsigned<T>::type>();
|
||||||
if (negative) return -static_cast<T>(value);
|
if (negative) value = -value;
|
||||||
return static_cast<T>(value);
|
return value;
|
||||||
}
|
}
|
||||||
|
|
||||||
public:
|
public:
|
||||||
@ -160,7 +159,7 @@ struct scan_handler : error_handler {
|
|||||||
const char* pos() const { return scan_ctx_.begin(); }
|
const char* pos() const { return scan_ctx_.begin(); }
|
||||||
|
|
||||||
void on_text(const char* begin, const char* end) {
|
void on_text(const char* begin, const char* end) {
|
||||||
auto size = to_unsigned(end - begin);
|
auto size = end - begin;
|
||||||
auto it = scan_ctx_.begin();
|
auto it = scan_ctx_.begin();
|
||||||
if (it + size > scan_ctx_.end() ||
|
if (it + size > scan_ctx_.end() ||
|
||||||
!std::equal(begin, end, make_checked(it, size))) {
|
!std::equal(begin, end, make_checked(it, size))) {
|
||||||
@ -198,7 +197,7 @@ struct scan_handler : error_handler {
|
|||||||
case scan_type::string_view_type: {
|
case scan_type::string_view_type: {
|
||||||
auto s = it;
|
auto s = it;
|
||||||
while (it != end && *it != ' ') ++it;
|
while (it != end && *it != ' ') ++it;
|
||||||
*arg_.string_view = fmt::string_view(s, to_unsigned(it - s));
|
*arg_.string_view = fmt::string_view(s, it - s);
|
||||||
scan_ctx_.advance_to(it);
|
scan_ctx_.advance_to(it);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user