summaryrefslogtreecommitdiffstats
path: root/tests/benchmarks/corelib/tools/qhash
diff options
context:
space:
mode:
authorMårten Nordheim <marten.nordheim@qt.io>2022-09-24 13:54:42 +0200
committerMårten Nordheim <marten.nordheim@qt.io>2022-09-27 23:30:30 +0200
commit7fea2d34fb3e9d13deb584595d119c870389b912 (patch)
tree44f3b7af88f26486e91f03348840372ffbe29e2e /tests/benchmarks/corelib/tools/qhash
parent6457f1ee71e5de3b14bc30b9e9a22d3a7534a196 (diff)
Update tst_bench_qhash hash functions to use size_t
Pre-requisite for a fix for qHash. The Qt50String inherits from QString and becomes ambiguous once it no longer goes through a catch-all template function because qHash(QString, size_t) has a better match for the second argument. Pick-to: 6.2 6.4 Change-Id: I23c7afb1b3aa167d40dc4838e82b7763de015f6b Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Diffstat (limited to 'tests/benchmarks/corelib/tools/qhash')
-rw-r--r--tests/benchmarks/corelib/tools/qhash/outofline.cpp14
-rw-r--r--tests/benchmarks/corelib/tools/qhash/tst_bench_qhash.h6
2 files changed, 10 insertions, 10 deletions
diff --git a/tests/benchmarks/corelib/tools/qhash/outofline.cpp b/tests/benchmarks/corelib/tools/qhash/outofline.cpp
index c8adc73da4..28c8ad6459 100644
--- a/tests/benchmarks/corelib/tools/qhash/outofline.cpp
+++ b/tests/benchmarks/corelib/tools/qhash/outofline.cpp
@@ -5,9 +5,9 @@
QT_BEGIN_NAMESPACE
-uint qHash(const Qt4String &str)
+size_t qHash(const Qt4String &str)
{
- int n = str.length();
+ qsizetype n = str.length();
const QChar *p = str.unicode();
uint h = 0;
@@ -19,11 +19,11 @@ uint qHash(const Qt4String &str)
return h;
}
-uint qHash(const Qt50String &key, uint seed)
+size_t qHash(const Qt50String &key, size_t seed)
{
const QChar *p = key.unicode();
- int len = key.size();
- uint h = seed;
+ qsizetype len = key.size();
+ size_t h = seed;
for (int i = 0; i < len; ++i)
h = 31 * h + p[i].unicode();
return h;
@@ -40,10 +40,10 @@ uint qHash(const Qt50String &key, uint seed)
// Still, we can avoid writing the multiplication as "(h << 5) - h"
// -- the compiler will turn it into a shift and an addition anyway
// (for instance, gcc 4.4 does that even at -O0).
-uint qHash(const JavaString &str)
+size_t qHash(const JavaString &str)
{
const unsigned short *p = (unsigned short *)str.constData();
- const int len = str.size();
+ const qsizetype len = str.size();
uint h = 0;
diff --git a/tests/benchmarks/corelib/tools/qhash/tst_bench_qhash.h b/tests/benchmarks/corelib/tools/qhash/tst_bench_qhash.h
index b566cb82db..f8a9d65f96 100644
--- a/tests/benchmarks/corelib/tools/qhash/tst_bench_qhash.h
+++ b/tests/benchmarks/corelib/tools/qhash/tst_bench_qhash.h
@@ -10,7 +10,7 @@ struct Qt4String : QString
};
QT_BEGIN_NAMESPACE
-uint qHash(const Qt4String &);
+size_t qHash(const Qt4String &);
QT_END_NAMESPACE
struct Qt50String : QString
@@ -20,7 +20,7 @@ struct Qt50String : QString
};
QT_BEGIN_NAMESPACE
-uint qHash(const Qt50String &, uint seed = 0);
+size_t qHash(const Qt50String &, size_t seed = 0);
QT_END_NAMESPACE
@@ -31,6 +31,6 @@ struct JavaString : QString
};
QT_BEGIN_NAMESPACE
-uint qHash(const JavaString &);
+size_t qHash(const JavaString &);
QT_END_NAMESPACE