summaryrefslogtreecommitdiffstats
path: root/src/3rdparty/assimp/contrib/rapidjson/include/rapidjson/internal/diyfp.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/3rdparty/assimp/contrib/rapidjson/include/rapidjson/internal/diyfp.h')
-rw-r--r--src/3rdparty/assimp/contrib/rapidjson/include/rapidjson/internal/diyfp.h14
1 files changed, 12 insertions, 2 deletions
diff --git a/src/3rdparty/assimp/contrib/rapidjson/include/rapidjson/internal/diyfp.h b/src/3rdparty/assimp/contrib/rapidjson/include/rapidjson/internal/diyfp.h
index 7a55ee31c..29abf8046 100644
--- a/src/3rdparty/assimp/contrib/rapidjson/include/rapidjson/internal/diyfp.h
+++ b/src/3rdparty/assimp/contrib/rapidjson/include/rapidjson/internal/diyfp.h
@@ -21,7 +21,7 @@
#include "../rapidjson.h"
-#if defined(_MSC_VER) && defined(_M_AMD64)
+#if defined(_MSC_VER) && defined(_M_AMD64) && !defined(__INTEL_COMPILER)
#include <intrin.h>
#pragma intrinsic(_BitScanReverse64)
#pragma intrinsic(_umul128)
@@ -35,8 +35,13 @@ RAPIDJSON_DIAG_PUSH
RAPIDJSON_DIAG_OFF(effc++)
#endif
+#ifdef __clang__
+RAPIDJSON_DIAG_PUSH
+RAPIDJSON_DIAG_OFF(padded)
+#endif
+
struct DiyFp {
- DiyFp() {}
+ DiyFp() : f(), e() {}
DiyFp(uint64_t fp, int exp) : f(fp), e(exp) {}
@@ -242,6 +247,11 @@ inline DiyFp GetCachedPower10(int exp, int *outExp) {
RAPIDJSON_DIAG_POP
#endif
+#ifdef __clang__
+RAPIDJSON_DIAG_POP
+RAPIDJSON_DIAG_OFF(padded)
+#endif
+
} // namespace internal
RAPIDJSON_NAMESPACE_END