diff options
author | Maxim Pimenov <m@maps.me> | 2015-09-17 13:12:14 +0300 |
---|---|---|
committer | Sergey Yershov <yershov@corp.mail.ru> | 2016-03-23 16:02:17 +0300 |
commit | 6cbb49c857f3f1d8d940979fc73d5de8facb4f88 (patch) | |
tree | fe9c1ef73826a19c7d089291322e9363e0c59f0f /coding/reader.hpp | |
parent | 90bde56951c078ec4bacdabe40a398cd8805cf1a (diff) |
Review fixes.
Diffstat (limited to 'coding/reader.hpp')
-rw-r--r-- | coding/reader.hpp | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/coding/reader.hpp b/coding/reader.hpp index e4f7980439..7b61ebd20d 100644 --- a/coding/reader.hpp +++ b/coding/reader.hpp @@ -229,15 +229,20 @@ inline void ReadFromPos(TReader const & reader, uint64_t pos, void * p, size_t s template <typename TPrimitive, class TReader> inline TPrimitive ReadPrimitiveFromPos(TReader const & reader, uint64_t pos) { +#ifndef OMIM_OS_LINUX + static_assert(is_trivially_copyable<TPrimitive>::value, ""); +#endif TPrimitive primitive; ReadFromPos(reader, pos, &primitive, sizeof(primitive)); return SwapIfBigEndian(primitive); } template <typename TPrimitive, class TSource> -inline typename enable_if<is_trivially_copyable<TPrimitive>::value, TPrimitive>::type -ReadPrimitiveFromSource(TSource & source) +TPrimitive ReadPrimitiveFromSource(TSource & source) { +#ifndef OMIM_OS_LINUX + static_assert(is_trivially_copyable<TPrimitive>::value, ""); +#endif TPrimitive primitive; source.Read(&primitive, sizeof(primitive)); return SwapIfBigEndian(primitive); |