From 5b34a5f5846aa8cdde987ecbf29a27d4b1da2c8b Mon Sep 17 00:00:00 2001 From: Eric Fiselier Date: Tue, 12 Aug 2014 00:48:56 +0000 Subject: [PATCH] Change two tests to be less dependant on locales. This patch removes the use of the "%c" specifier for getting/setting times. The semantics of this specifier differ between linux and Mac. I don't believe the use of this specifier was important to the test. The following tests now pass on linux. test/input.output/iostream.format/ext.manip/get_time.pass.cpp test/input.output/iostream.format/ext.manip/put_time.pass.cpp git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@215417 91177308-0d34-0410-b5e6-96231b3b80d8 --- .../input.output/iostream.format/ext.manip/get_time.pass.cpp | 4 ++-- .../input.output/iostream.format/ext.manip/put_time.pass.cpp | 5 +++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/test/input.output/iostream.format/ext.manip/get_time.pass.cpp b/test/input.output/iostream.format/ext.manip/get_time.pass.cpp index 686655245..17ff642dc 100644 --- a/test/input.output/iostream.format/ext.manip/get_time.pass.cpp +++ b/test/input.output/iostream.format/ext.manip/get_time.pass.cpp @@ -43,7 +43,7 @@ int main() std::istream is(&sb); is.imbue(std::locale(LOCALE_en_US_UTF_8)); std::tm t = {0}; - is >> std::get_time(&t, "%c"); + is >> std::get_time(&t, "%a %b %d %H:%M:%S %Y"); assert(t.tm_sec == 59); assert(t.tm_min == 55); assert(t.tm_hour == 23); @@ -59,7 +59,7 @@ int main() std::wistream is(&sb); is.imbue(std::locale(LOCALE_en_US_UTF_8)); std::tm t = {0}; - is >> std::get_time(&t, L"%c"); + is >> std::get_time(&t, L"%a %b %d %H:%M:%S %Y"); assert(t.tm_sec == 59); assert(t.tm_min == 55); assert(t.tm_hour == 23); diff --git a/test/input.output/iostream.format/ext.manip/put_time.pass.cpp b/test/input.output/iostream.format/ext.manip/put_time.pass.cpp index d64ca07f8..52a98a1b5 100644 --- a/test/input.output/iostream.format/ext.manip/put_time.pass.cpp +++ b/test/input.output/iostream.format/ext.manip/put_time.pass.cpp @@ -62,7 +62,8 @@ int main() t.tm_mon = 11; t.tm_year = 161; t.tm_wday = 6; - os << std::put_time(&t, "%c"); + t.tm_isdst = 0; + os << std::put_time(&t, "%a %b %d %H:%M:%S %Y"); assert(sb.str() == "Sat Dec 31 23:55:59 2061"); } { @@ -77,7 +78,7 @@ int main() t.tm_mon = 11; t.tm_year = 161; t.tm_wday = 6; - os << std::put_time(&t, L"%c"); + os << std::put_time(&t, L"%a %b %d %H:%M:%S %Y"); assert(sb.str() == L"Sat Dec 31 23:55:59 2061"); } }