On 13/11/15 14:52, Jonathan Wakely wrote:
That patch was wrong, the new macros in include/bits/c++config used
"CSTDIO" instead of "STDIO" so it caused several tests to go from
PASS to UNSUPPORTED, oops!
This is the correct version, tested again more carefully, on
powerpc64le-linux and powerpc-aix and x86_64-dragonfly.
Committed to trunk.
Just as a note, on baremetal ARM and AArch64 (arm-none-eabi / aarch64-none-elf),
this causes a bunch more tests to be executed that were previously UNSUPPORTED,
including
FAIL: 21_strings/basic_string/numeric_conversions/char/stod.cc execution test
FAIL: 21_strings/basic_string/numeric_conversions/char/stof.cc execution test
FAIL: 21_strings/basic_string/numeric_conversions/char/stold.cc execution test
FAIL: 21_strings/basic_string/numeric_conversions/wchar_t/stod.cc execution test
FAIL: 21_strings/basic_string/numeric_conversions/wchar_t/stof.cc execution test
FAIL: 21_strings/basic_string/numeric_conversions/wchar_t/stold.cc execution
test
FAIL: 27_io/basic_ostream/inserters_arithmetic/char/hexfloat.cc execution test
these were previously gated off by the dg-require-string-conversions, via the
"#if !defined(_GLIBCXX_USE_C99) || defined(_GLIBCXX_HAVE_BROKEN_VSWPRINTF)" as
GLIBCXX_USE_C99 was not defined. However, now we have "#if
!(_GLIBCXX_USE_C99_STDIO && _GLIBCXX_USE_C99_STDLIB && _GLIBCXX_USE_C99_WCHAR)"
and all of those are true.
(Note the tests would have failed before if we had executed them, there is no
change there AFAICS.)
Cheers,
Alan