Switch to gdtoa.
This gives us a real strtold for LP64 and fixes various LP64
bugs.
Bug: 13563801
Change-Id: I277858d718ee746e136b6b6308a495ba50dfa488
diff --git a/tests/stdio_test.cpp b/tests/stdio_test.cpp
index 0aa1d15..f991a5b 100644
--- a/tests/stdio_test.cpp
+++ b/tests/stdio_test.cpp
@@ -306,19 +306,19 @@
TEST(stdio, snprintf_f_special) {
char buf[BUFSIZ];
snprintf(buf, sizeof(buf), "%f", nanf(""));
- EXPECT_STREQ("NaN", buf);
+ EXPECT_STRCASEEQ("NaN", buf);
snprintf(buf, sizeof(buf), "%f", HUGE_VALF);
- EXPECT_STREQ("Inf", buf);
+ EXPECT_STRCASEEQ("Inf", buf);
}
TEST(stdio, snprintf_g_special) {
char buf[BUFSIZ];
snprintf(buf, sizeof(buf), "%g", nan(""));
- EXPECT_STREQ("NaN", buf);
+ EXPECT_STRCASEEQ("NaN", buf);
snprintf(buf, sizeof(buf), "%g", HUGE_VAL);
- EXPECT_STREQ("Inf", buf);
+ EXPECT_STRCASEEQ("Inf", buf);
}
TEST(stdio, snprintf_d_INT_MAX) {
@@ -365,6 +365,16 @@
EXPECT_STREQ("-9223372036854775808", buf);
}
+TEST(stdio, snprintf_e) {
+ char buf[BUFSIZ];
+
+ snprintf(buf, sizeof(buf), "%e", 1.5);
+ EXPECT_STREQ("1.500000e+00", buf);
+
+ snprintf(buf, sizeof(buf), "%Le", 1.5l);
+ EXPECT_STREQ("1.500000e+00", buf);
+}
+
TEST(stdio, popen) {
FILE* fp = popen("cat /proc/version", "r");
ASSERT_TRUE(fp != NULL);