[gcc r10-7062] libstdc++: Fix failing filesystem::path tests (PR 93244)
Jonathan Wakely
redi@gcc.gnu.org
Fri Mar 6 11:34:00 GMT 2020
https://gcc.gnu.org/g:180eeeaeb200a07f7f24e1f203cd026880ff861c
commit r10-7062-g180eeeaeb200a07f7f24e1f203cd026880ff861c
Author: Jonathan Wakely <jwakely@redhat.com>
Date: Fri Mar 6 11:27:34 2020 +0000
libstdc++: Fix failing filesystem::path tests (PR 93244)
The checks for PR 93244 don't actually pass on Windows (which is the
target where the bug is present) because of a different bug, PR 94063.
This adjusts the tests to not be affected by 94063 so that they verify
that 93244 was fixed.
PR libstdc++/93244
* testsuite/27_io/filesystem/path/generic/generic_string.cc: Adjust
test to not fail due to PR 94063.
* testsuite/27_io/filesystem/path/generic/utf.cc: Likewise.
* testsuite/27_io/filesystem/path/generic/wchar_t.cc: Likewise.
Diff:
---
libstdc++-v3/ChangeLog | 8 ++++++++
.../testsuite/27_io/filesystem/path/generic/generic_string.cc | 11 ++++++-----
libstdc++-v3/testsuite/27_io/filesystem/path/generic/utf.cc | 11 ++++++-----
.../testsuite/27_io/filesystem/path/generic/wchar_t.cc | 11 ++++++-----
4 files changed, 26 insertions(+), 15 deletions(-)
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 644a18a..b9ea649 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,11 @@
+2020-03-06 Jonathan Wakely <jwakely@redhat.com>
+
+ PR libstdc++/93244
+ * testsuite/27_io/filesystem/path/generic/generic_string.cc: Adjust
+ test to not fail due to PR 94063.
+ * testsuite/27_io/filesystem/path/generic/utf.cc: Likewise.
+ * testsuite/27_io/filesystem/path/generic/wchar_t.cc: Likewise.
+
2020-03-06 Andreas Krebbel <krebbel@linux.ibm.com>
* src/c++11/system_error.cc: Omit the ENOTSUP case statement if it
diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/generic/generic_string.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/generic/generic_string.cc
index 677f5f5..5caf079 100644
--- a/libstdc++-v3/testsuite/27_io/filesystem/path/generic/generic_string.cc
+++ b/libstdc++-v3/testsuite/27_io/filesystem/path/generic/generic_string.cc
@@ -49,11 +49,12 @@ test01()
void
test02()
{
- // PR libstdc++/93244
- path p("C:");
- p += path::preferred_separator;
- p += "foo/bar";
- VERIFY( p.generic_string() == "C:/foo/bar" );
+ if constexpr (path::preferred_separator == L'\\')
+ {
+ // PR libstdc++/93244
+ VERIFY( path("C:\\foo\\bar").generic_string() == "C:/foo/bar" );
+ VERIFY( path("C://foo//bar").generic_string() == "C:/foo/bar" );
+ }
}
int
diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/generic/utf.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/generic/utf.cc
index 9a2f579..52afdb4 100644
--- a/libstdc++-v3/testsuite/27_io/filesystem/path/generic/utf.cc
+++ b/libstdc++-v3/testsuite/27_io/filesystem/path/generic/utf.cc
@@ -49,11 +49,12 @@ test01()
void
test02()
{
- // PR libstdc++/93244
- path p("C:");
- p += path::preferred_separator;
- p += "foo/bar";
- VERIFY( p.generic_u32string() == U"C:/foo/bar" );
+ if constexpr (path::preferred_separator == L'\\')
+ {
+ // PR libstdc++/93244
+ VERIFY( path("C:\\foo\\bar").generic_u32string() == U"C:/foo/bar" );
+ VERIFY( path("C://foo//bar").generic_u32string() == U"C:/foo/bar" );
+ }
}
int
diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/generic/wchar_t.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/generic/wchar_t.cc
index 5dacedc..7bb2f64 100644
--- a/libstdc++-v3/testsuite/27_io/filesystem/path/generic/wchar_t.cc
+++ b/libstdc++-v3/testsuite/27_io/filesystem/path/generic/wchar_t.cc
@@ -49,11 +49,12 @@ test01()
void
test02()
{
- // PR libstdc++/93244
- path p("C:");
- p += path::preferred_separator;
- p += "foo/bar";
- VERIFY( p.generic_wstring() == L"C:/foo/bar" );
+ if constexpr (path::preferred_separator == L'\\')
+ {
+ // PR libstdc++/93244
+ VERIFY( path("C:\\foo\\bar").generic_wstring() == L"C:/foo/bar" );
+ VERIFY( path("C://foo//bar").generic_wstring() == L"C:/foo/bar" );
+ }
}
int
More information about the Libstdc++-cvs
mailing list