From f017b1d470aec0ca4918e059343d57de99fb2254 Mon Sep 17 00:00:00 2001 From: jackpoz Date: Sat, 11 Nov 2017 16:30:45 +0100 Subject: [PATCH] Dep/G3D: Add static assert checks for Array functions being used with non-POD types --- dep/g3dlite/include/G3D/Array.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/dep/g3dlite/include/G3D/Array.h b/dep/g3dlite/include/G3D/Array.h index c562f5c920f..c86b20fd7e9 100644 --- a/dep/g3dlite/include/G3D/Array.h +++ b/dep/g3dlite/include/G3D/Array.h @@ -346,6 +346,7 @@ public: /** Resizes this to match the size of \a other and then copies the data from other using memcpy. This is only safe for POD types */ void copyPOD(const Array& other) { + static_assert(std::is_pod::value, "copyPOD called on non-POD type"); if (numAllocated < other.num) { m_memoryManager->free(data); data = NULL; @@ -364,6 +365,7 @@ public: /** Resizes this to just barely match the size of \a other + itself and then copies the data to the end of the array from other using memcpy. This is only safe for POD types */ void appendPOD(const Array& other) { + static_assert(std::is_pod::value, "appendPOD called on non-POD type"); const size_t oldSize = num; num += other.num; if (numAllocated < num) {