From 6b859736bb1e707778627b2e58ef6088e475a54c Mon Sep 17 00:00:00 2001 From: Jonathan Wakely <jwakely@redhat.com> Date: Tue, 22 Nov 2022 12:17:27 +0000 Subject: [PATCH] libstdc++: Add testcase for fs::path constraint recursion [PR106201] libstdc++-v3/ChangeLog: PR libstdc++/106201 * testsuite/27_io/filesystem/iterators/106201.cc: New test. --- .../testsuite/27_io/filesystem/iterators/106201.cc | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 libstdc++-v3/testsuite/27_io/filesystem/iterators/106201.cc diff --git a/libstdc++-v3/testsuite/27_io/filesystem/iterators/106201.cc b/libstdc++-v3/testsuite/27_io/filesystem/iterators/106201.cc new file mode 100644 index 000000000000..4a64e675816f --- /dev/null +++ b/libstdc++-v3/testsuite/27_io/filesystem/iterators/106201.cc @@ -0,0 +1,12 @@ +// { dg-options "-std=gnu++20" } +// { dg-do compile { target c++20 } } +// { dg-require-filesystem-ts "" } + +// PR libstdc++/106201 constraint recursion in path(Source const&) constructor. + +#include <filesystem> +#include <ranges> +using I = std::counted_iterator<std::filesystem::directory_iterator>; +static_assert( std::swappable<I> ); +using R = std::counted_iterator<std::filesystem::recursive_directory_iterator>; +static_assert( std::swappable<R> ); -- GitLab