@@ -759,14 +759,14 @@ static void valueFlowArrayElement(TokenList& tokenlist, const Settings& settings
759759 result.intvalue = 0 ;
760760 setTokenValue (tok, std::move (result), settings);
761761 } else if (index >= 0 && index < s.size ()) {
762- result.intvalue = s[index];
762+ result.intvalue = s[static_cast <std:: size_t >( index) ];
763763 setTokenValue (tok, std::move (result), settings);
764764 }
765765 } else if (Token::simpleMatch (arrayValue.tokvalue , " {" )) {
766766 std::vector<const Token*> args = getArguments (arrayValue.tokvalue );
767767 if (index < 0 || index >= args.size ())
768768 continue ;
769- const Token* arg = args[index];
769+ const Token* arg = args[static_cast <std:: size_t >( index) ];
770770 if (!arg->hasKnownIntValue ())
771771 continue ;
772772 const ValueFlow::Value& v = arg->values ().front ();
@@ -3982,7 +3982,7 @@ static std::list<ValueFlow::Value> truncateValues(std::list<ValueFlow::Value> va
39823982 if (value.isImpossible ())
39833983 continue ;
39843984 if (value.isFloatValue ()) {
3985- value.intvalue = value.floatValue ;
3985+ value.intvalue = static_cast <MathLib::bigint>( value.floatValue ) ;
39863986 value.valueType = ValueFlow::Value::ValueType::INT;
39873987 }
39883988
@@ -4505,7 +4505,7 @@ struct ConditionHandler {
45054505 if (Token::Match (tok->astParent (), " ==|!=" )) {
45064506 const Token* sibling = tok->astSibling ();
45074507 if (sibling->hasKnownIntValue () && (astIsBool (tok) || astIsBool (sibling))) {
4508- const bool value = sibling->values ().front ().intvalue ;
4508+ const bool value = !! sibling->values ().front ().intvalue ;
45094509 if (inverted)
45104510 *inverted ^= value == Token::simpleMatch (tok->astParent (), " !=" );
45114511 continue ;
@@ -6916,12 +6916,12 @@ static void valueFlowSafeFunctions(const TokenList& tokenlist, const SymbolDatab
69166916 std::list<ValueFlow::Value> argValues;
69176917 argValues.emplace_back (0 );
69186918 argValues.back ().valueType = ValueFlow::Value::ValueType::FLOAT;
6919- argValues.back ().floatValue = isLow ? low : -1E25 ;
6919+ argValues.back ().floatValue = isLow ? static_cast < double >( low) : -1E25 ;
69206920 argValues.back ().errorPath .emplace_back (arg.nameToken (), " Safe checks: Assuming argument has value " + MathLib::toString (argValues.back ().floatValue ));
69216921 argValues.back ().safe = true ;
69226922 argValues.emplace_back (0 );
69236923 argValues.back ().valueType = ValueFlow::Value::ValueType::FLOAT;
6924- argValues.back ().floatValue = isHigh ? high : 1E25 ;
6924+ argValues.back ().floatValue = isHigh ? static_cast < double >( high) : 1E25 ;
69256925 argValues.back ().errorPath .emplace_back (arg.nameToken (), " Safe checks: Assuming argument has value " + MathLib::toString (argValues.back ().floatValue ));
69266926 argValues.back ().safe = true ;
69276927 valueFlowForward (const_cast <Token*>(functionScope->bodyStart ->next ()),
0 commit comments