summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorVille Voutilainen <ville.voutilainen@qt.io>2019-10-23 01:12:48 +0300
committerVille Voutilainen <ville.voutilainen@qt.io>2019-10-24 13:58:50 +0300
commit9367d966e6c10c95b92f2b55e2cead7e85d80cfe (patch)
tree78e71457a5e365aabf302395fc92fe79cfac9b0c /src
parentc686e885c004a48c90cff300c0ad1e817e43fb99 (diff)
Fix a -Wclass-memaccess problem in qjson
qtbase/src/corelib/serialization/qjson_p.h:230:38: error: ‘void* memcpy(void*, const void*, size_t)’ copying an object of type ‘QJsonPrivate::qle_ushort’ {aka ‘class QSpecialInteger<QLittleEndianStorageType<short unsigned int> >’} with ‘private’ member ‘QSpecialInteger<QLittleEndianStorageType<short unsigned int> >::val’ from an array of ‘const class QChar’; use assignment or copy-initialization instead [-Werror=class-memaccess] 230 | str.length()*sizeof(ushort)); | ^ Change-Id: Ie58e7fe4bae3003227364012ad56ab23bd560d8c Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Diffstat (limited to 'src')
-rw-r--r--src/corelib/serialization/qjson_p.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/corelib/serialization/qjson_p.h b/src/corelib/serialization/qjson_p.h
index 40b2414e4a..ff010cb902 100644
--- a/src/corelib/serialization/qjson_p.h
+++ b/src/corelib/serialization/qjson_p.h
@@ -222,7 +222,9 @@ public:
for (int i = 0; i < str.length(); ++i)
d->utf16[i] = uc[i];
#else
- memcpy(d->utf16, str.unicode(), str.length()*sizeof(ushort));
+ memcpy(static_cast<void *>(d->utf16),
+ static_cast<const void *>(str.unicode()),
+ str.length()*sizeof(ushort));
#endif
if (str.length() & 1)
d->utf16[str.length()] = 0;