This avoids some warnings when building with -fno-rtti because the
function parameters are only used when RTTI is enabled.

libstdc++-v3/ChangeLog:

        * include/bits/shared_ptr_base.h (__shared_ptr::_M_get_deleter):
        Add unused attribute to parameter.
        * src/c++11/shared_ptr.cc (_Sp_make_shared_tag::_S_eq):
        Likewise.

Tested powerpc64le-linux. Committed to trunk.

commit 87eaa3c525eb65775e6d77403b83a273a2397099
Author: Jonathan Wakely <jwak...@redhat.com>
Date:   Fri Feb 12 10:36:18 2021

    libstdc++: Add unused attributes to shared_ptr functions
    
    This avoids some warnings when building with -fno-rtti because the
    function parameters are only used when RTTI is enabled.
    
    libstdc++-v3/ChangeLog:
    
            * include/bits/shared_ptr_base.h (__shared_ptr::_M_get_deleter):
            Add unused attribute to parameter.
            * src/c++11/shared_ptr.cc (_Sp_make_shared_tag::_S_eq):
            Likewise.

diff --git a/libstdc++-v3/include/bits/shared_ptr_base.h 
b/libstdc++-v3/include/bits/shared_ptr_base.h
index 15707f8e74a..b24900b2008 100644
--- a/libstdc++-v3/include/bits/shared_ptr_base.h
+++ b/libstdc++-v3/include/bits/shared_ptr_base.h
@@ -450,7 +450,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
       }
 
       virtual void*
-      _M_get_deleter(const std::type_info& __ti) noexcept
+      _M_get_deleter(const type_info& __ti [[__gnu__::__unused__]]) noexcept
       {
 #if __cpp_rtti
        // _GLIBCXX_RESOLVE_LIB_DEFECTS
diff --git a/libstdc++-v3/src/c++11/shared_ptr.cc 
b/libstdc++-v3/src/c++11/shared_ptr.cc
index 13e2d520199..4678fbeffe2 100644
--- a/libstdc++-v3/src/c++11/shared_ptr.cc
+++ b/libstdc++-v3/src/c++11/shared_ptr.cc
@@ -97,7 +97,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
 #endif
 
   bool
-  _Sp_make_shared_tag::_S_eq(const type_info& ti) noexcept
+  _Sp_make_shared_tag::_S_eq(const type_info& ti [[gnu::unused]]) noexcept
   {
 #if __cpp_rtti
     return ti == typeid(_Sp_make_shared_tag);

Reply via email to