summaryrefslogtreecommitdiffstats
path: root/include/gtest
diff options
context:
space:
mode:
authorzhanyong.wan <zhanyong.wan@861a406c-534a-0410-8894-cb66d6ee9925>2013-09-18 17:49:56 (GMT)
committerzhanyong.wan <zhanyong.wan@861a406c-534a-0410-8894-cb66d6ee9925>2013-09-18 17:49:56 (GMT)
commit2d3543f81d6d4583332f8b60768ade18e0f96220 (patch)
tree87b8d6bdc73d7b0105e7837aab4d77402437ebf2 /include/gtest
parentc306ef2e14483dbf4f047a3e1ca3f86111b800ca (diff)
downloadgoogletest-2d3543f81d6d4583332f8b60768ade18e0f96220.zip
googletest-2d3543f81d6d4583332f8b60768ade18e0f96220.tar.gz
googletest-2d3543f81d6d4583332f8b60768ade18e0f96220.tar.bz2
avoids clash with the max() macro on Windows
Diffstat (limited to 'include/gtest')
-rw-r--r--include/gtest/internal/gtest-internal.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/include/gtest/internal/gtest-internal.h b/include/gtest/internal/gtest-internal.h
index 1604725..0dcc3a3 100644
--- a/include/gtest/internal/gtest-internal.h
+++ b/include/gtest/internal/gtest-internal.h
@@ -51,6 +51,7 @@
#endif
#include <ctype.h>
+#include <float.h>
#include <string.h>
#include <iomanip>
#include <limits>
@@ -294,6 +295,9 @@ class FloatingPoint {
return ReinterpretBits(kExponentBitMask);
}
+ // Returns the maximum representable finite floating-point number.
+ static RawType Max();
+
// Non-static methods
// Returns the bits that represents this number.
@@ -374,6 +378,13 @@ class FloatingPoint {
FloatingPointUnion u_;
};
+// We cannot use std::numeric_limits<T>::max() as it clashes with the max()
+// macro defined by <windows.h>.
+template <>
+inline float FloatingPoint<float>::Max() { return FLT_MAX; }
+template <>
+inline double FloatingPoint<double>::Max() { return DBL_MAX; }
+
// Typedefs the instances of the FloatingPoint template class that we
// care to use.
typedef FloatingPoint<float> Float;