On Thu, 23 Jun 2022 at 12:21, Alexandre Oliva <[email protected]> wrote:
>
> On Jun 23, 2022, Jonathan Wakely <[email protected]> wrote:
>
> > On Thu, 23 Jun 2022 at 07:26, Alexandre Oliva wrote:
> >> Would a patch to add:
> >>
> >> // { dg-xfail-if "::rename is not POSIX-compliant" { target *-*-rtems* } }
> >>
> >> to rename.cc tests be acceptable?
>
> > Yes, I think that's definitely the way to go.
>
> The "target" above shouldn't have been there, and the :: appears to get
> tcl/expect/dejagnu confused. Here's the patch.
>
> Regstrapped on x86_64-linux-gnu, also tested with a cross to
> aarch64-rtems6. Ok to install?
OK, thanks.
>
>
> libstdc++: xfail rename tests on rtems
>
> ::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.
> ---
> .../27_io/filesystem/operations/rename.cc | 1 +
> .../experimental/filesystem/operations/rename.cc | 1 +
> 2 files changed, 2 insertions(+)
>
> diff --git a/libstdc++-v3/testsuite/27_io/filesystem/operations/rename.cc
> b/libstdc++-v3/testsuite/27_io/filesystem/operations/rename.cc
> index b74e1133a7618..62543158e5241 100644
> --- a/libstdc++-v3/testsuite/27_io/filesystem/operations/rename.cc
> +++ b/libstdc++-v3/testsuite/27_io/filesystem/operations/rename.cc
> @@ -17,6 +17,7 @@
>
> // { dg-do run { target c++17 } }
> // { dg-require-filesystem-ts "" }
> +// { dg-xfail-if "rename is not POSIX-compliant" { *-*-rtems* } }
>
> #include <filesystem>
> #include <testsuite_hooks.h>
> diff --git
> a/libstdc++-v3/testsuite/experimental/filesystem/operations/rename.cc
> b/libstdc++-v3/testsuite/experimental/filesystem/operations/rename.cc
> index 37e743b770fdf..3c501757bff17 100644
> --- a/libstdc++-v3/testsuite/experimental/filesystem/operations/rename.cc
> +++ b/libstdc++-v3/testsuite/experimental/filesystem/operations/rename.cc
> @@ -18,6 +18,7 @@
> // { dg-options "-DUSE_FILESYSTEM_TS -lstdc++fs" }
> // { dg-do run { target c++11 } }
> // { dg-require-filesystem-ts "" }
> +// { dg-xfail-if "rename is not POSIX-compliant" { *-*-rtems* } }
>
> #include <experimental/filesystem>
> #include <testsuite_hooks.h>
>
>
> --
> Alexandre Oliva, happy hacker https://FSFLA.org/blogs/lxo/
> Free Software Activist GNU Toolchain Engineer
> Disinformation flourishes because many people care deeply about injustice
> but very few check the facts. Ask me about <https://stallmansupport.org>
>