mirror of
https://github.com/fmtlib/fmt.git
synced 2024-12-27 03:21:34 +00:00
Merge pull request #28 from jdale88/vslevel4warnings
Fixed some level 4 warnings in VS2013
This commit is contained in:
commit
87545b0af4
17
format.cc
17
format.cc
@ -39,6 +39,11 @@
|
|||||||
|
|
||||||
using fmt::ULongLong;
|
using fmt::ULongLong;
|
||||||
|
|
||||||
|
#if _MSC_VER
|
||||||
|
# pragma warning(push)
|
||||||
|
# pragma warning(disable: 4127) // conditional expression is constant
|
||||||
|
#endif
|
||||||
|
|
||||||
namespace {
|
namespace {
|
||||||
|
|
||||||
#ifndef _MSC_VER
|
#ifndef _MSC_VER
|
||||||
@ -237,7 +242,7 @@ void fmt::BasicWriter<Char>::FormatDouble(
|
|||||||
char sign = 0;
|
char sign = 0;
|
||||||
// Use SignBit instead of value < 0 because the latter is always
|
// Use SignBit instead of value < 0 because the latter is always
|
||||||
// false for NaN.
|
// false for NaN.
|
||||||
if (SignBit(value)) {
|
if (SignBit(static_cast<double>(value))) {
|
||||||
sign = '-';
|
sign = '-';
|
||||||
value = -value;
|
value = -value;
|
||||||
} else if (spec.sign_flag()) {
|
} else if (spec.sign_flag()) {
|
||||||
@ -259,7 +264,7 @@ void fmt::BasicWriter<Char>::FormatDouble(
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (IsInf(value)) {
|
if (IsInf(static_cast<double>(value))) {
|
||||||
// Format infinity ourselves because sprintf's output is not consistent
|
// Format infinity ourselves because sprintf's output is not consistent
|
||||||
// across platforms.
|
// across platforms.
|
||||||
std::size_t size = 4;
|
std::size_t size = 4;
|
||||||
@ -628,7 +633,7 @@ void fmt::BasicFormatter<Char>::DoFormat() {
|
|||||||
} else {
|
} else {
|
||||||
out = writer.GrowBuffer(1);
|
out = writer.GrowBuffer(1);
|
||||||
}
|
}
|
||||||
*out = arg.int_value;
|
*out = static_cast<Char>(arg.int_value);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case STRING: {
|
case STRING: {
|
||||||
@ -667,7 +672,7 @@ void fmt::BasicFormatter<Char>::DoFormat() {
|
|||||||
|
|
||||||
void fmt::ColorWriter::operator()(const fmt::BasicWriter<char> &w) const {
|
void fmt::ColorWriter::operator()(const fmt::BasicWriter<char> &w) const {
|
||||||
char escape[] = "\x1b[30m";
|
char escape[] = "\x1b[30m";
|
||||||
escape[3] = '0' + color_;
|
escape[3] = '0' + static_cast<char>(color_);
|
||||||
std::fputs(escape, stdout);
|
std::fputs(escape, stdout);
|
||||||
std::fwrite(w.data(), 1, w.size(), stdout);
|
std::fwrite(w.data(), 1, w.size(), stdout);
|
||||||
std::fputs(RESET_COLOR, stdout);
|
std::fputs(RESET_COLOR, stdout);
|
||||||
@ -731,3 +736,7 @@ template void fmt::BasicFormatter<wchar_t>::CheckSign(
|
|||||||
const wchar_t *&s, const Arg &arg);
|
const wchar_t *&s, const Arg &arg);
|
||||||
|
|
||||||
template void fmt::BasicFormatter<wchar_t>::DoFormat();
|
template void fmt::BasicFormatter<wchar_t>::DoFormat();
|
||||||
|
|
||||||
|
#if _MSC_VER
|
||||||
|
# pragma warning(pop)
|
||||||
|
#endif
|
||||||
|
Loading…
Reference in New Issue
Block a user