Explorar o código

jsoncpp: Add missing cast to convert from char to UInt

When parsing digits we know our `c - '0'` expression results in a
non-negative value due to preceding conditions.  Simply cast the result
to UInt.  This fixes compilation on SolarisStudio 12.4.
Marc Chevrier %!s(int64=10) %!d(string=hai) anos
pai
achega
a7fe4413d5
Modificáronse 1 ficheiros con 1 adicións e 1 borrados
  1. 1 1
      Utilities/cmjsoncpp/src/lib_json/json_reader.cpp

+ 1 - 1
Utilities/cmjsoncpp/src/lib_json/json_reader.cpp

@@ -529,7 +529,7 @@ bool Reader::decodeNumber(Token& token, Value& decoded) {
       return addError("'" + std::string(token.start_, token.end_) +
                           "' is not a number.",
                       token);
-    Value::UInt digit(c - '0');
+    Value::UInt digit(static_cast<Value::UInt>(c - '0'));
     if (value >= threshold) {
       // We've hit or exceeded the max value divided by 10 (rounded down). If
       // a) we've only just touched the limit, b) this is the last digit, and