mirror of
https://github.com/nlohmann/json.git
synced 2026-07-03 09:14:18 +00:00
🚨 removed compiler warnings
This commit is contained in:
@@ -35,6 +35,7 @@ class binary_reader
|
||||
{
|
||||
using number_integer_t = typename BasicJsonType::number_integer_t;
|
||||
using number_unsigned_t = typename BasicJsonType::number_unsigned_t;
|
||||
using number_float_t = typename BasicJsonType::number_float_t;
|
||||
using string_t = typename BasicJsonType::string_t;
|
||||
using json_sax_t = json_sax<BasicJsonType>;
|
||||
|
||||
@@ -423,19 +424,21 @@ class binary_reader
|
||||
val = (mant == 0) ? std::numeric_limits<double>::infinity()
|
||||
: std::numeric_limits<double>::quiet_NaN();
|
||||
}
|
||||
return sax->number_float((half & 0x8000) != 0 ? -val : val, "");
|
||||
return sax->number_float((half & 0x8000) != 0
|
||||
? static_cast<number_float_t>(-val)
|
||||
: static_cast<number_float_t>(val), "");
|
||||
}
|
||||
|
||||
case 0xFA: // Single-Precision Float (four-byte IEEE 754)
|
||||
{
|
||||
float number;
|
||||
return get_number(number) and sax->number_float(static_cast<double>(number), "");
|
||||
return get_number(number) and sax->number_float(static_cast<number_float_t>(number), "");
|
||||
}
|
||||
|
||||
case 0xFB: // Double-Precision Float (eight-byte IEEE 754)
|
||||
{
|
||||
double number;
|
||||
return get_number(number) and sax->number_float(number, "");
|
||||
return get_number(number) and sax->number_float(static_cast<number_float_t>(number), "");
|
||||
}
|
||||
|
||||
default: // anything else (0xFF is handled inside the other types)
|
||||
@@ -676,13 +679,13 @@ class binary_reader
|
||||
case 0xCA: // float 32
|
||||
{
|
||||
float number;
|
||||
return get_number(number) and sax->number_float(static_cast<double>(number), "");
|
||||
return get_number(number) and sax->number_float(static_cast<number_float_t>(number), "");
|
||||
}
|
||||
|
||||
case 0xCB: // float 64
|
||||
{
|
||||
double number;
|
||||
return get_number(number) and sax->number_float(number, "");
|
||||
return get_number(number) and sax->number_float(static_cast<number_float_t>(number), "");
|
||||
}
|
||||
|
||||
case 0xCC: // uint 8
|
||||
@@ -1464,13 +1467,13 @@ class binary_reader
|
||||
case 'd':
|
||||
{
|
||||
float number;
|
||||
return get_number(number) and sax->number_float(static_cast<double>(number), "");
|
||||
return get_number(number) and sax->number_float(static_cast<number_float_t>(number), "");
|
||||
}
|
||||
|
||||
case 'D':
|
||||
{
|
||||
double number;
|
||||
return get_number(number) and sax->number_float(number, "");
|
||||
return get_number(number) and sax->number_float(static_cast<number_float_t>(number), "");
|
||||
}
|
||||
|
||||
case 'C': // char
|
||||
@@ -1664,7 +1667,7 @@ class binary_reader
|
||||
std::string get_token_string() const
|
||||
{
|
||||
char cr[3];
|
||||
snprintf(cr, 3, "%.2X", current);
|
||||
snprintf(cr, 3, "%.2hhX", static_cast<unsigned char>(current));
|
||||
return std::string{cr};
|
||||
}
|
||||
|
||||
|
||||
@@ -1173,7 +1173,7 @@ scan_number_done:
|
||||
{
|
||||
// escape control characters
|
||||
char cs[9];
|
||||
snprintf(cs, 9, "<U+%.4X>", c);
|
||||
snprintf(cs, 9, "<U+%.4hhX>", c);
|
||||
result += cs;
|
||||
}
|
||||
else
|
||||
|
||||
Reference in New Issue
Block a user