[gcc r11-9772] libstdc++: Fix mismatched noexcept-specifiers in Filesystem TS

Jonathan Wakely redi@gcc.gnu.org
Mon Apr 4 11:47:36 GMT 2022


https://gcc.gnu.org/g:6f8133689f439716455d17d333c238d85add23ed

commit r11-9772-g6f8133689f439716455d17d333c238d85add23ed
Author: Jonathan Wakely <jwakely@redhat.com>
Date:   Mon Sep 27 22:07:12 2021 +0100

    libstdc++: Fix mismatched noexcept-specifiers in Filesystem TS
    
    The copy_file fix should have been part of r12-7063-gda72e0fd20f87b.
    
    The path::begin() fix should have been part of r12-3930-gf2b7f56a15d9cb.
    Thanks to Timm Bäder for reporting this one.
    
    libstdc++-v3/ChangeLog:
    
            * include/experimental/bits/fs_fwd.h (copy_file): Remove
            incorrect noexcept from declaration.
            * include/experimental/bits/fs_path.h (path::begin, path::end):
            Add noexcept to declarations, to match definitions.
    
    (cherry picked from commit 944da70a5d1cdc5bd4327b2d32420f57b6883985)

Diff:
---
 libstdc++-v3/include/experimental/bits/fs_fwd.h  | 2 +-
 libstdc++-v3/include/experimental/bits/fs_path.h | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/libstdc++-v3/include/experimental/bits/fs_fwd.h b/libstdc++-v3/include/experimental/bits/fs_fwd.h
index 8d63e095be5..7decf95ee6d 100644
--- a/libstdc++-v3/include/experimental/bits/fs_fwd.h
+++ b/libstdc++-v3/include/experimental/bits/fs_fwd.h
@@ -280,7 +280,7 @@ _GLIBCXX_END_NAMESPACE_CXX11
 
   bool copy_file(const path& __from, const path& __to, copy_options __option);
   bool copy_file(const path& __from, const path& __to, copy_options __option,
-		 error_code&) noexcept;
+		 error_code&);
 
   path current_path();
 
diff --git a/libstdc++-v3/include/experimental/bits/fs_path.h b/libstdc++-v3/include/experimental/bits/fs_path.h
index a2bc931c696..1cc1b3bf686 100644
--- a/libstdc++-v3/include/experimental/bits/fs_path.h
+++ b/libstdc++-v3/include/experimental/bits/fs_path.h
@@ -425,8 +425,8 @@ namespace __detail
     class iterator;
     typedef iterator const_iterator;
 
-    iterator begin() const;
-    iterator end() const;
+    iterator begin() const noexcept;
+    iterator end() const noexcept;
 
     /// @cond undocumented
     // Create a basic_string by reading until a null character.


More information about the Libstdc++-cvs mailing list