mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-04-14 08:10:27 +08:00
PR libstdc++/81808 skip test if reading directory doesn't fail
PR libstdc++/81808 * testsuite/27_io/basic_fstream/53984.cc: Adjust test for targets that allow opening a directory as a FILE and reading from it. From-SVN: r251041
This commit is contained in:
parent
e1769bdd4c
commit
1ea93d89a9
@ -1,3 +1,9 @@
|
||||
2017-08-11 Jonathan Wakely <jwakely@redhat.com>
|
||||
|
||||
PR libstdc++/81808
|
||||
* testsuite/27_io/basic_fstream/53984.cc: Adjust test for targets
|
||||
that allow opening a directory as a FILE and reading from it.
|
||||
|
||||
2017-08-09 Jonathan Wakely <jwakely@redhat.com>
|
||||
|
||||
* include/std/type_traits (_GLIBCXX_NO_BUILTIN_HAS_UNIQ_OBJ_REP):
|
||||
|
@ -17,6 +17,8 @@
|
||||
|
||||
// { dg-require-fileio "" }
|
||||
|
||||
// PR libstdc++/53984
|
||||
|
||||
#include <fstream>
|
||||
#include <testsuite_hooks.h>
|
||||
|
||||
@ -26,9 +28,32 @@ test01()
|
||||
std::ifstream in(".");
|
||||
if (in)
|
||||
{
|
||||
char c;
|
||||
if (in.get(c))
|
||||
{
|
||||
// Reading a directory doesn't produce an error on this target
|
||||
// so the formatted input functions below wouldn't fail anyway
|
||||
// (see PR libstdc++/81808).
|
||||
return;
|
||||
}
|
||||
int x;
|
||||
in.clear();
|
||||
// Formatted input function should set badbit, but not throw:
|
||||
in >> x;
|
||||
VERIFY( in.bad() );
|
||||
|
||||
in.clear();
|
||||
in.exceptions(std::ios::badbit);
|
||||
try
|
||||
{
|
||||
// Formatted input function should set badbit, and throw:
|
||||
in >> x;
|
||||
VERIFY( false );
|
||||
}
|
||||
catch (const std::exception&)
|
||||
{
|
||||
VERIFY( in.bad() );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user