Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mapsme/omim.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaxim Pimenov <m@maps.me>2015-09-17 13:12:14 +0300
committerSergey Yershov <yershov@corp.mail.ru>2016-03-23 16:02:17 +0300
commit6cbb49c857f3f1d8d940979fc73d5de8facb4f88 (patch)
treefe9c1ef73826a19c7d089291322e9363e0c59f0f /coding/reader.hpp
parent90bde56951c078ec4bacdabe40a398cd8805cf1a (diff)
Review fixes.
Diffstat (limited to 'coding/reader.hpp')
-rw-r--r--coding/reader.hpp9
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);