libstdc++: Fix some -Wsystem-headers warnings
authorJonathan Wakely <jwakely@redhat.com>
Mon, 18 Nov 2019 12:46:02 +0000 (12:46 +0000)
committerJonathan Wakely <redi@gcc.gnu.org>
Mon, 18 Nov 2019 12:46:02 +0000 (12:46 +0000)
* include/bits/alloc_traits.h (allocator_traits::construct)
(allocator_traits::destroy, allocator_traits::max_size): Add unused
attributes to parameters that are not used in C++20.
* include/std/bit (__ceil2): Add braces around assertion to avoid
-Wmissing-braces warning.

From-SVN: r278401

libstdc++-v3/ChangeLog
libstdc++-v3/include/bits/alloc_traits.h
libstdc++-v3/include/std/bit

index 48b5c9b27bea1bda45327a8486afdee1d2f967d1..d2162ae28bb357ddecf907a9b77abcc2da705a76 100644 (file)
@@ -1,3 +1,11 @@
+2019-11-18  Jonathan Wakely  <jwakely@redhat.com>
+
+       * include/bits/alloc_traits.h (allocator_traits::construct)
+       (allocator_traits::destroy, allocator_traits::max_size): Add unused
+       attributes to parameters that are not used in C++20.
+       * include/std/bit (__ceil2): Add braces around assertion to avoid
+       -Wmissing-braces warning.
+
 2019-11-16  Edward Smith-Rowland  <3dw4rd@verizon.net>
 
        Repair the <tuple> part of C++20 p1032 Misc constexpr bits.
index 55211ac1d7264bd9a93c28b4f3ebc358710aea79..142b23fe00f8e6a10ed219913307e6cd20aeee12 100644 (file)
@@ -499,8 +499,9 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
       */
       template<typename _Up, typename... _Args>
        static _GLIBCXX20_CONSTEXPR void
-       construct(allocator_type& __a, _Up* __p, _Args&&... __args)
-       noexcept(noexcept(::new((void*)__p) _Up(std::forward<_Args>(__args)...)))
+       construct(allocator_type& __a __attribute__((__unused__)), _Up* __p,
+                 _Args&&... __args)
+       noexcept(noexcept(::new((void*)__p) _Up(std::declval<_Args>()...)))
        {
 #if __cplusplus <= 201703L
          __a.construct(__p, std::forward<_Args>(__args)...);
@@ -518,7 +519,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
       */
       template<typename _Up>
        static _GLIBCXX20_CONSTEXPR void
-       destroy(allocator_type& __a, _Up* __p)
+       destroy(allocator_type& __a __attribute__((__unused__)), _Up* __p)
        noexcept(is_nothrow_destructible<_Up>::value)
        {
 #if __cplusplus <= 201703L
@@ -534,7 +535,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
        *  @return @c __a.max_size()
       */
       static _GLIBCXX20_CONSTEXPR size_type
-      max_size(const allocator_type& __a) noexcept
+      max_size(const allocator_type& __a __attribute__((__unused__))) noexcept
       {
 #if __cplusplus <= 201703L
        return __a.max_size();
index e89bca2c35992dcee08a584ead6f6074dc4c8f82..7b5253b104c5c0bdc05dd54f4911a3d02251bb3a 100644 (file)
@@ -225,7 +225,9 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
       // by UBSan, and by debug assertions.
 #ifdef _GLIBCXX_HAVE_BUILTIN_IS_CONSTANT_EVALUATED
       if (!__builtin_is_constant_evaluated())
-       __glibcxx_assert( __shift_exponent != numeric_limits<_Tp>::digits );
+       {
+         __glibcxx_assert( __shift_exponent != numeric_limits<_Tp>::digits );
+       }
 #endif
       using __promoted_type = decltype(__x << 1);
       if _GLIBCXX17_CONSTEXPR (!is_same<__promoted_type, _Tp>::value)