Fix Clang 10 warning about LLONG_MAX being inexact in double
validator.cpp:707:19: error: implicit conversion from 'long long' to 'double' changes value from 9223372036854775807 to 9223372036854775808 [-Werror,- Wimplicit-int-float-conversion] Task-number: QTBUG-83666 Pick-To: 5.15 Change-Id: I99ab0f318b1c43b89888fffd160b4a95a258423b Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Samuel Gaist <samuel.gaist@idiap.ch>
This commit is contained in:
parent
64349c3fd5
commit
ff6d2cb0d5
@ -693,8 +693,9 @@ QValidator::State QDoubleValidatorPrivate::validateWithLocale(QString &input, QL
|
||||
|
||||
if (notation == QDoubleValidator::StandardNotation) {
|
||||
double max = qMax(qAbs(q->b), qAbs(q->t));
|
||||
if (max < double(LLONG_MAX)) {
|
||||
qlonglong n = pow10(numDigits(qlonglong(max)));
|
||||
qlonglong v;
|
||||
if (convertDoubleTo(max, &v)) {
|
||||
qlonglong n = pow10(numDigits(v));
|
||||
// In order to get the highest possible number in the intermediate
|
||||
// range we need to get 10 to the power of the number of digits
|
||||
// after the decimal's and subtract that from the top number.
|
||||
|
Loading…
Reference in New Issue
Block a user