Browse Source

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 10 years ago
parent
commit
a7fe4413d5
1 changed files with 1 additions and 1 deletions
  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