libstdc++-v3/ChangeLog:

        * include/bits/fs_path.h (path::_List::type()): Avoid narrowing
        conversion.
        * include/std/chrono (operator+(const year&, const years&)):
        Likewise.

Tested powerpc64le-linux. Committed to trunk.

commit b6b9fd4af9ac46a8bb19a906e4c2afa14da91017
Author: Jonathan Wakely <jwak...@redhat.com>
Date:   Thu Sep 10 18:47:08 2020

    libstdc++: Fix -Wnarrowing warnings
    
    libstdc++-v3/ChangeLog:
    
            * include/bits/fs_path.h (path::_List::type()): Avoid narrowing
            conversion.
            * include/std/chrono (operator+(const year&, const years&)):
            Likewise.

diff --git a/libstdc++-v3/include/bits/fs_path.h 
b/libstdc++-v3/include/bits/fs_path.h
index 26ddf0afec4..5a0917c582d 100644
--- a/libstdc++-v3/include/bits/fs_path.h
+++ b/libstdc++-v3/include/bits/fs_path.h
@@ -667,7 +667,7 @@ namespace __detail
       ~_List() = default;
 
       _Type type() const noexcept
-      { return _Type{reinterpret_cast<uintptr_t>(_M_impl.get()) & 0x3}; }
+      { return _Type(reinterpret_cast<uintptr_t>(_M_impl.get()) & 0x3); }
 
       void type(_Type) noexcept;
 
diff --git a/libstdc++-v3/include/std/chrono b/libstdc++-v3/include/std/chrono
index afee7859c6d..9b9fd2bd42d 100644
--- a/libstdc++-v3/include/std/chrono
+++ b/libstdc++-v3/include/std/chrono
@@ -1591,7 +1591,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
 
       friend constexpr year
       operator+(const year& __x, const years& __y) noexcept
-      { return year{int{__x} + __y.count()}; }
+      { return year{int{__x} + static_cast<int>(__y.count())}; }
 
       friend constexpr year
       operator+(const years& __x, const year& __y) noexcept

Reply via email to