diff options
Diffstat (limited to 'libstdc++-v3/testsuite/experimental/filesystem/operations/canonical.cc')
-rw-r--r-- | libstdc++-v3/testsuite/experimental/filesystem/operations/canonical.cc | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/libstdc++-v3/testsuite/experimental/filesystem/operations/canonical.cc b/libstdc++-v3/testsuite/experimental/filesystem/operations/canonical.cc index e13c4bfe0a5..5b4c573eebf 100644 --- a/libstdc++-v3/testsuite/experimental/filesystem/operations/canonical.cc +++ b/libstdc++-v3/testsuite/experimental/filesystem/operations/canonical.cc @@ -59,8 +59,28 @@ test01() VERIFY( !ec ); } +void +test02() +{ +#if __cpp_exceptions + bool test __attribute__((unused)) = false; + + fs::path p = "rel", base = __gnu_test::nonexistent_path(); + fs::path e1, e2; + try { + canonical(p, base); + } catch (const fs::filesystem_error& e) { + e1 = e.path1(); + e2 = e.path2(); + } + VERIFY( e1 == p ); + VERIFY( e2 == base ); +#endif +} + int main() { test01(); + test02(); } |