mirror of
https://gitlab.com/libeigen/eigen.git
synced 2025-08-14 04:35:57 +08:00
Update warning suppression to latest.
This commit is contained in:
parent
4612627355
commit
34e5f34b39
@ -1,7 +1,7 @@
|
|||||||
#ifndef EIGEN_WARNINGS_DISABLED
|
#ifndef EIGEN_WARNINGS_DISABLED
|
||||||
#define EIGEN_WARNINGS_DISABLED
|
#define EIGEN_WARNINGS_DISABLED
|
||||||
|
|
||||||
#ifdef _MSC_VER
|
#if defined(_MSC_VER)
|
||||||
// 4100 - unreferenced formal parameter (occurred e.g. in aligned_allocator::destroy(pointer p))
|
// 4100 - unreferenced formal parameter (occurred e.g. in aligned_allocator::destroy(pointer p))
|
||||||
// 4101 - unreferenced local variable
|
// 4101 - unreferenced local variable
|
||||||
// 4127 - conditional expression is constant
|
// 4127 - conditional expression is constant
|
||||||
@ -36,25 +36,28 @@
|
|||||||
#pragma warning disable 2196 279 1684 2259
|
#pragma warning disable 2196 279 1684 2259
|
||||||
|
|
||||||
#elif defined __clang__
|
#elif defined __clang__
|
||||||
// -Wconstant-logical-operand - warning: use of logical && with constant operand; switch to bitwise & or remove constant
|
|
||||||
// this is really a stupid warning as it warns on compile-time expressions involving enums
|
|
||||||
#ifndef EIGEN_PERMANENTLY_DISABLE_STUPID_WARNINGS
|
#ifndef EIGEN_PERMANENTLY_DISABLE_STUPID_WARNINGS
|
||||||
#pragma clang diagnostic push
|
#pragma clang diagnostic push
|
||||||
#endif
|
#endif
|
||||||
#pragma clang diagnostic ignored "-Wconstant-logical-operand"
|
#if defined(__has_warning)
|
||||||
#if __clang_major__ >= 3 && __clang_minor__ >= 5
|
// -Wconstant-logical-operand - warning: use of logical && with constant operand; switch to bitwise & or remove constant
|
||||||
#pragma clang diagnostic ignored "-Wabsolute-value"
|
// this is really a stupid warning as it warns on compile-time expressions involving enums
|
||||||
#endif
|
#if __has_warning("-Wconstant-logical-operand")
|
||||||
#if __clang_major__ >= 10
|
#pragma clang diagnostic ignored "-Wconstant-logical-operand"
|
||||||
#pragma clang diagnostic ignored "-Wimplicit-int-float-conversion"
|
#endif
|
||||||
#endif
|
#if __has_warning("-Wimplicit-int-float-conversion")
|
||||||
#if ( defined(__ALTIVEC__) || defined(__VSX__) ) && __cplusplus < 201103L
|
#pragma clang diagnostic ignored "-Wimplicit-int-float-conversion"
|
||||||
// warning: generic selections are a C11-specific feature
|
#endif
|
||||||
// ignoring warnings thrown at vec_ctf in Altivec/PacketMath.h
|
#if ( defined(__ALTIVEC__) || defined(__VSX__) ) && __cplusplus < 201103L
|
||||||
#pragma clang diagnostic ignored "-Wc11-extensions"
|
// warning: generic selections are a C11-specific feature
|
||||||
|
// ignoring warnings thrown at vec_ctf in Altivec/PacketMath.h
|
||||||
|
#if __has_warning("-Wc11-extensions")
|
||||||
|
#pragma clang diagnostic ignored "-Wc11-extensions"
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#elif defined __GNUC__
|
#elif defined __GNUC__ && !defined(__FUJITSU)
|
||||||
|
|
||||||
#if (!defined(EIGEN_PERMANENTLY_DISABLE_STUPID_WARNINGS)) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6))
|
#if (!defined(EIGEN_PERMANENTLY_DISABLE_STUPID_WARNINGS)) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6))
|
||||||
#pragma GCC diagnostic push
|
#pragma GCC diagnostic push
|
||||||
@ -75,32 +78,53 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined __NVCC__
|
#if defined __NVCC__
|
||||||
#pragma diag_suppress boolean_controlling_expr_is_constant
|
// MSVC 14.16 (required by CUDA 9.*) does not support the _Pragma keyword, so
|
||||||
|
// we instead use Microsoft's __pragma extension.
|
||||||
|
#if defined _MSC_VER
|
||||||
|
#define EIGEN_MAKE_PRAGMA(X) __pragma(#X)
|
||||||
|
#else
|
||||||
|
#define EIGEN_MAKE_PRAGMA(X) _Pragma(#X)
|
||||||
|
#endif
|
||||||
|
#if defined __NVCC_DIAG_PRAGMA_SUPPORT__
|
||||||
|
#define EIGEN_NV_DIAG_SUPPRESS(X) EIGEN_MAKE_PRAGMA(nv_diag_suppress X)
|
||||||
|
#else
|
||||||
|
#define EIGEN_NV_DIAG_SUPPRESS(X) EIGEN_MAKE_PRAGMA(diag_suppress X)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
EIGEN_NV_DIAG_SUPPRESS(boolean_controlling_expr_is_constant)
|
||||||
// Disable the "statement is unreachable" message
|
// Disable the "statement is unreachable" message
|
||||||
#pragma diag_suppress code_is_unreachable
|
EIGEN_NV_DIAG_SUPPRESS(code_is_unreachable)
|
||||||
// Disable the "dynamic initialization in unreachable code" message
|
// Disable the "dynamic initialization in unreachable code" message
|
||||||
#pragma diag_suppress initialization_not_reachable
|
EIGEN_NV_DIAG_SUPPRESS(initialization_not_reachable)
|
||||||
// Disable the "invalid error number" message that we get with older versions of nvcc
|
// Disable the "invalid error number" message that we get with older versions of nvcc
|
||||||
#pragma diag_suppress 1222
|
EIGEN_NV_DIAG_SUPPRESS(1222)
|
||||||
// Disable the "calling a __host__ function from a __host__ __device__ function is not allowed" messages (yes, there are many of them and they seem to change with every version of the compiler)
|
// Disable the "calling a __host__ function from a __host__ __device__ function is not allowed" messages (yes, there are many of them and they seem to change with every version of the compiler)
|
||||||
#pragma diag_suppress 2527
|
EIGEN_NV_DIAG_SUPPRESS(2527)
|
||||||
#pragma diag_suppress 2529
|
EIGEN_NV_DIAG_SUPPRESS(2529)
|
||||||
#pragma diag_suppress 2651
|
EIGEN_NV_DIAG_SUPPRESS(2651)
|
||||||
#pragma diag_suppress 2653
|
EIGEN_NV_DIAG_SUPPRESS(2653)
|
||||||
#pragma diag_suppress 2668
|
EIGEN_NV_DIAG_SUPPRESS(2668)
|
||||||
#pragma diag_suppress 2669
|
EIGEN_NV_DIAG_SUPPRESS(2669)
|
||||||
#pragma diag_suppress 2670
|
EIGEN_NV_DIAG_SUPPRESS(2670)
|
||||||
#pragma diag_suppress 2671
|
EIGEN_NV_DIAG_SUPPRESS(2671)
|
||||||
#pragma diag_suppress 2735
|
EIGEN_NV_DIAG_SUPPRESS(2735)
|
||||||
#pragma diag_suppress 2737
|
EIGEN_NV_DIAG_SUPPRESS(2737)
|
||||||
#pragma diag_suppress 2739
|
EIGEN_NV_DIAG_SUPPRESS(2739)
|
||||||
#pragma diag_suppress 2976
|
EIGEN_NV_DIAG_SUPPRESS(2885)
|
||||||
#pragma diag_suppress 2979
|
EIGEN_NV_DIAG_SUPPRESS(2888)
|
||||||
|
EIGEN_NV_DIAG_SUPPRESS(2976)
|
||||||
|
EIGEN_NV_DIAG_SUPPRESS(2979)
|
||||||
|
EIGEN_NV_DIAG_SUPPRESS(20011)
|
||||||
|
EIGEN_NV_DIAG_SUPPRESS(20014)
|
||||||
// Disable the "// __device__ annotation is ignored on a function(...) that is
|
// Disable the "// __device__ annotation is ignored on a function(...) that is
|
||||||
// explicitly defaulted on its first declaration" message.
|
// explicitly defaulted on its first declaration" message.
|
||||||
// The __device__ annotation seems to actually be needed in some cases,
|
// The __device__ annotation seems to actually be needed in some cases,
|
||||||
// otherwise resulting in kernel runtime errors.
|
// otherwise resulting in kernel runtime errors.
|
||||||
#pragma diag_suppress 2977
|
EIGEN_NV_DIAG_SUPPRESS(2886)
|
||||||
|
EIGEN_NV_DIAG_SUPPRESS(2977)
|
||||||
|
EIGEN_NV_DIAG_SUPPRESS(20012)
|
||||||
|
#undef EIGEN_NV_DIAG_SUPPRESS
|
||||||
|
#undef EIGEN_MAKE_PRAGMA
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#else
|
#else
|
||||||
|
Loading…
x
Reference in New Issue
Block a user