[testsuite] Add dg-require-fileio to some libstdc++ wchar_t tests
Jonathan Wakely
jwakely@redhat.com
Fri Aug 31 11:09:00 GMT 2018
On 30/08/18 19:19 -0600, Sandra Loosemore wrote:
>One of the simulators we use for testing nios2-elf builds doesn't
>include full semihosted fileio support. (IIRC it can do I/O to the
>console and open and close files, but doesn't support fseek,
>stat/fstat, unlink, etc). There are a bunch of libstdc++
>wchar_t/$test.cc test cases that fail on this target where the
>corresponding char/$test.cc test is skipped, because the char test
>case files already specify "dg-require-fileio" and the wchar_t ones
>don't.
>
>I used grep etc to find all such pairs of test cases, and then added
>"dg-require-fileio" to the wchar_t files where it was missing. Note
>that this patch touches more test cases than the ones that were
>actually failing,
Three of them use dg-require-namedlocale to only run when localedata
for a specific locale is available, and four are restricted to only be
tested for { target *-*-mingw* }, would that explain it?
>and I didn't confirm that all the similarly-named
>char and wchar_t files were actually testing the exact same things.
These ones don't match the corresponding /char/ version:
libstdc++-v3/testsuite/27_io/basic_filebuf/underflow/wchar_t/2.cc
libstdc++-v3/testsuite/27_io/basic_filebuf/underflow/wchar_t/3.cc
libstdc++-v3/testsuite/27_io/basic_ifstream/cons/wchar_t/1.cc
libstdc++-v3/testsuite/27_io/basic_ofstream/cons/wchar_t/1.cc
libstdc++-v3/testsuite/27_io/basic_ofstream/open/wchar_t/1.cc
libstdc++-v3/testsuite/27_io/objects/wchar_t/10.cc
They do all use file I/O though.
>Is this OK to check in? Or is some deeper analysis required to
>identify which tests are affected?
I checked the files, most of them #include <fstream> so we can
safely assume they require file I/O. These ones don't include
<fstream> but they all use fopen and/or freopen:
libstdc++-v3/testsuite/27_io/objects/wchar_t/10.cc
libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-1.cc
libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-2.cc
libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-3.cc
libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-4.cc
libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-5.cc
libstdc++-v3/testsuite/ext/stdio_sync_filebuf/wchar_t/1.cc
So the patch seems fine. Thanks for keeping the test results clean.
More information about the Gcc-patches
mailing list