Avoid redundant declaration of static constexpr members in c++17
Keep declarations in c++ < 17 using new macro, GTEST_INTERNAL_NEED_REDUNDANT_CONSTEXPR_DECL. Fixes #4148. PiperOrigin-RevId: 511510401 Change-Id: I76c3f2fccf07a0978adcbe5f8f0203b9d0c33872
This commit is contained in:
parent
d9a4bbcaf2
commit
39a26e12d6
@ -900,8 +900,10 @@ class HasDebugStringAndShortDebugString {
|
|||||||
HasDebugStringType::value && HasShortDebugStringType::value;
|
HasDebugStringType::value && HasShortDebugStringType::value;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
#ifdef GTEST_INTERNAL_NEED_REDUNDANT_CONSTEXPR_DECL
|
||||||
template <typename T>
|
template <typename T>
|
||||||
constexpr bool HasDebugStringAndShortDebugString<T>::value;
|
constexpr bool HasDebugStringAndShortDebugString<T>::value;
|
||||||
|
#endif
|
||||||
|
|
||||||
// When the compiler sees expression IsContainerTest<C>(0), if C is an
|
// When the compiler sees expression IsContainerTest<C>(0), if C is an
|
||||||
// STL-style container class, the first overload of IsContainerTest
|
// STL-style container class, the first overload of IsContainerTest
|
||||||
|
@ -2447,4 +2447,9 @@ using Variant = ::std::variant<T...>;
|
|||||||
#endif // __has_include
|
#endif // __has_include
|
||||||
#endif // GTEST_HAS_ABSL
|
#endif // GTEST_HAS_ABSL
|
||||||
|
|
||||||
|
#if defined(GTEST_INTERNAL_CPLUSPLUS_LANG) && \
|
||||||
|
GTEST_INTERNAL_CPLUSPLUS_LANG < 201703L
|
||||||
|
#define GTEST_INTERNAL_NEED_REDUNDANT_CONSTEXPR_DECL 1
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif // GOOGLETEST_INCLUDE_GTEST_INTERNAL_GTEST_PORT_H_
|
#endif // GOOGLETEST_INCLUDE_GTEST_INTERNAL_GTEST_PORT_H_
|
||||||
|
Loading…
Reference in New Issue
Block a user