|
@@ -46,6 +46,7 @@
|
|
|
#include <google/protobuf/io/tokenizer.h>
|
|
|
#include <google/protobuf/io/zero_copy_stream_impl.h>
|
|
|
#include <google/protobuf/stubs/strutil.h>
|
|
|
+#include <google/protobuf/stubs/mathlimits.h>
|
|
|
#include <google/protobuf/stubs/substitute.h>
|
|
|
#include <google/protobuf/testing/googletest.h>
|
|
|
#include <gtest/gtest.h>
|
|
@@ -57,11 +58,6 @@ namespace protobuf {
|
|
|
// Can't use an anonymous namespace here due to brokenness of Tru64 compiler.
|
|
|
namespace text_format_unittest {
|
|
|
|
|
|
-inline bool IsNaN(double value) {
|
|
|
- // NaN is never equal to anything, even itself.
|
|
|
- return value != value;
|
|
|
-}
|
|
|
-
|
|
|
// A basic string with different escapable characters for testing.
|
|
|
const string kEscapeTestString =
|
|
|
"\"A string with ' characters \n and \r newlines and \t tabs and \001 "
|
|
@@ -898,8 +894,8 @@ TEST_F(TextFormatTest, ParseExotic) {
|
|
|
EXPECT_EQ(message.repeated_double(8), numeric_limits<double>::infinity());
|
|
|
EXPECT_EQ(message.repeated_double(9), -numeric_limits<double>::infinity());
|
|
|
EXPECT_EQ(message.repeated_double(10), -numeric_limits<double>::infinity());
|
|
|
- EXPECT_TRUE(IsNaN(message.repeated_double(11)));
|
|
|
- EXPECT_TRUE(IsNaN(message.repeated_double(12)));
|
|
|
+ EXPECT_TRUE(MathLimits<double>::IsNaN(message.repeated_double(11)));
|
|
|
+ EXPECT_TRUE(MathLimits<double>::IsNaN(message.repeated_double(12)));
|
|
|
|
|
|
// Note: Since these string literals have \0's in them, we must explicitly
|
|
|
// pass their sizes to string's constructor.
|