summaryrefslogtreecommitdiff
path: root/Source/Core/VideoCommon/ShaderCache.cpp
diff options
context:
space:
mode:
authorLéo Lam <leo@leolam.fr>2020-12-16 15:01:20 +0100
committerLéo Lam <leo@leolam.fr>2020-12-16 15:37:43 +0100
commiteafe0056721d828636be540cddf3c1226f88f334 (patch)
treed0b5fd956ef86fb54c66a9c8d88edc78ce6f2878 /Source/Core/VideoCommon/ShaderCache.cpp
parent5a5c22dc6c802585f8b7016ad4fffec0aa9604c4 (diff)
Fix -Wclass-memaccess warnings
We want to clear/memset the padding bytes, not just each member, so using assignment or {} initialization is not an option. To silence the warnings, cast the object pointer to u8* (which is not undefined behavior) to make it explicit to the compiler that we want to fill the object representation.
Diffstat (limited to 'Source/Core/VideoCommon/ShaderCache.cpp')
-rw-r--r--Source/Core/VideoCommon/ShaderCache.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/Source/Core/VideoCommon/ShaderCache.cpp b/Source/Core/VideoCommon/ShaderCache.cpp
index f8b4b881f0..7383dc6595 100644
--- a/Source/Core/VideoCommon/ShaderCache.cpp
+++ b/Source/Core/VideoCommon/ShaderCache.cpp
@@ -188,7 +188,7 @@ template <typename SerializedUidType, typename UidType>
static void SerializePipelineUid(const UidType& uid, SerializedUidType& serialized_uid)
{
// Convert to disk format. Ensure all padding bytes are zero.
- std::memset(&serialized_uid, 0, sizeof(serialized_uid));
+ std::memset(reinterpret_cast<u8*>(&serialized_uid), 0, sizeof(serialized_uid));
serialized_uid.vertex_decl = uid.vertex_format->GetVertexDeclaration();
serialized_uid.vs_uid = uid.vs_uid;
serialized_uid.gs_uid = uid.gs_uid;