mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-24 03:33:20 +01:00
Remove the is_trivially_copyable check entirely.
This is still breaking builds because some compilers think this type is not trivially copyable even when it should be. Reverting this static_assert until I have time to investigate. llvm-svn: 295529
This commit is contained in:
parent
dae3265b27
commit
86a381ea10
@ -65,8 +65,6 @@ public:
|
||||
}
|
||||
|
||||
template <typename T> Error readObject(const T *&Dest) {
|
||||
static_assert(isPodLike<T>::value,
|
||||
"Can only read trivially copyable object types!");
|
||||
ArrayRef<uint8_t> Buffer;
|
||||
if (auto EC = readBytes(Buffer, sizeof(T)))
|
||||
return EC;
|
||||
@ -76,8 +74,6 @@ public:
|
||||
|
||||
template <typename T>
|
||||
Error readArray(ArrayRef<T> &Array, uint32_t NumElements) {
|
||||
static_assert(isPodLike<T>::value,
|
||||
"Can only read trivially copyable object types!");
|
||||
ArrayRef<uint8_t> Bytes;
|
||||
if (NumElements == 0) {
|
||||
Array = ArrayRef<T>();
|
||||
@ -104,8 +100,6 @@ public:
|
||||
|
||||
template <typename T>
|
||||
Error readArray(FixedStreamArray<T> &Array, uint32_t NumItems) {
|
||||
static_assert(isPodLike<T>::value,
|
||||
"Can only read trivially copyable object types!");
|
||||
if (NumItems == 0) {
|
||||
Array = FixedStreamArray<T>();
|
||||
return Error::success();
|
||||
|
@ -17,7 +17,6 @@
|
||||
#include "llvm/DebugInfo/MSF/StreamRef.h"
|
||||
#include "llvm/Support/Endian.h"
|
||||
#include "llvm/Support/Error.h"
|
||||
#include "llvm/Support/type_traits.h"
|
||||
#include <cstdint>
|
||||
#include <type_traits>
|
||||
|
||||
@ -62,15 +61,11 @@ public:
|
||||
"writeObject should not be used with pointers, to write "
|
||||
"the pointed-to value dereference the pointer before calling "
|
||||
"writeObject");
|
||||
static_assert(isPodLike<T>::value,
|
||||
"Can only serialize trivially copyable object types");
|
||||
return writeBytes(
|
||||
ArrayRef<uint8_t>(reinterpret_cast<const uint8_t *>(&Obj), sizeof(T)));
|
||||
}
|
||||
|
||||
template <typename T> Error writeArray(ArrayRef<T> Array) {
|
||||
static_assert(isPodLike<T>::value,
|
||||
"Can only serialize trivially copyable object types");
|
||||
if (Array.empty())
|
||||
return Error::success();
|
||||
|
||||
@ -88,8 +83,6 @@ public:
|
||||
}
|
||||
|
||||
template <typename T> Error writeArray(FixedStreamArray<T> Array) {
|
||||
static_assert(isPodLike<T>::value,
|
||||
"Can only serialize trivially copyable object types");
|
||||
return writeStreamRef(Array.getUnderlyingStream());
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user