diff --git a/libcxx/test/std/localization/locale.categories/category.time/locale.time.put/locale.time.put.members/put2.pass.cpp b/libcxx/test/std/localization/locale.categories/category.time/locale.time.put/locale.time.put.members/put2.pass.cpp --- a/libcxx/test/std/localization/locale.categories/category.time/locale.time.put/locale.time.put.members/put2.pass.cpp +++ b/libcxx/test/std/localization/locale.categories/category.time/locale.time.put/locale.time.put.members/put2.pass.cpp @@ -6,8 +6,6 @@ // //===----------------------------------------------------------------------===// -// XFAIL: LIBCXX-WINDOWS-FIXME - // // class time_put @@ -321,11 +319,15 @@ std::string ex(str, iter.base()); // assert(ex == "-0400"); depends on time zone } +#ifndef _WIN32 + // The Windows strftime() doesn't support the "%+" format. Depending on CRT + // configuration of the invalid parameter handler, this can abort the process. { iter = f.put(output_iterator(str), ios, '*', &t, '+'); std::string ex(str, iter.base()); // assert(ex == "Sat May 2 13:03:06 EDT 2009"); depends on time zone } +#endif { iter = f.put(output_iterator(str), ios, '*', &t, '%'); std::string ex(str, iter.base());