libstdc++: xfail rename tests on rtems
authorAlexandre Oliva <oliva@adacore.com>
Fri, 24 Jun 2022 02:20:52 +0000 (23:20 -0300)
committerAlexandre Oliva <oliva@gnu.org>
Fri, 24 Jun 2022 02:28:14 +0000 (23:28 -0300)
::rename on RTEMS does not meet several POSIX requirements, despite
compliance with C and C++ standards.  ::std::filesystem::rename, in
turn, has requirements borrowed from POSIX, so it would have to be a
lot more than a simple wrapper around ::rename on RTEMS, and even then
fall short.

Until RTEMS reimplements ::rename for POSIX compliance, expect
filesystem rename tests to fail on it.

for  libstdc++-v3/ChangeLog

* testsuite/27_io/filesystem/operations/rename.cc: xfail on
rtems.
* testsuite/experimental/filesystem/operations/rename.cc:
Likewise.

libstdc++-v3/testsuite/27_io/filesystem/operations/rename.cc
libstdc++-v3/testsuite/experimental/filesystem/operations/rename.cc

index b74e113..983374f 100644 (file)
@@ -17,6 +17,7 @@
 
 // { dg-do run { target c++17 } }
 // { dg-require-filesystem-ts "" }
+// { dg-xfail-run-if "rename is not POSIX-compliant" { *-*-rtems* } }
 
 #include <filesystem>
 #include <testsuite_hooks.h>
index 37e743b..762b943 100644 (file)
@@ -18,6 +18,7 @@
 // { dg-options "-DUSE_FILESYSTEM_TS -lstdc++fs" }
 // { dg-do run { target c++11 } }
 // { dg-require-filesystem-ts "" }
+// { dg-xfail-run-if "rename is not POSIX-compliant" { *-*-rtems* } }
 
 #include <experimental/filesystem>
 #include <testsuite_hooks.h>