From a4a5b4288e18a92ef59b97e1fa230419b5ee222e Mon Sep 17 00:00:00 2001 From: Ville Voutilainen Date: Wed, 23 Oct 2019 01:12:48 +0300 Subject: Fix a -Wclass-memaccess problem in qjson MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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 >’} with ‘private’ member ‘QSpecialInteger >::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 (cherry picked from commit 9367d966e6c10c95b92f2b55e2cead7e85d80cfe) --- src/corelib/serialization/qjson_p.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/corelib/serialization/qjson_p.h b/src/corelib/serialization/qjson_p.h index feba1faac6..a5a7516f00 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(d->utf16), + static_cast(str.unicode()), + str.length()*sizeof(ushort)); #endif if (str.length() & 1) d->utf16[str.length()] = 0; -- cgit v1.2.3