From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id A2C9C158042 for ; Mon, 21 Oct 2024 12:27:59 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id EE9AAE0980; Mon, 21 Oct 2024 12:27:58 +0000 (UTC) Received: from smtp.gentoo.org (mail.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id D6029E0980 for ; Mon, 21 Oct 2024 12:27:58 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 1A64C343085 for ; Mon, 21 Oct 2024 12:27:58 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id B089A11DF for ; Mon, 21 Oct 2024 12:27:56 +0000 (UTC) From: "Sam James" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Sam James" Message-ID: <1729513648.5ecbc3c9e907f74fa12599e0fa5672553cc8db15.sam@gentoo> Subject: [gentoo-commits] proj/gcc-patches:master commit in: 15.0.0/gentoo/ X-VCS-Repository: proj/gcc-patches X-VCS-Files: 15.0.0/gentoo/75_all_PR117220-uninitialized-clang.patch 15.0.0/gentoo/README.history X-VCS-Directories: 15.0.0/gentoo/ X-VCS-Committer: sam X-VCS-Committer-Name: Sam James X-VCS-Revision: 5ecbc3c9e907f74fa12599e0fa5672553cc8db15 X-VCS-Branch: master Date: Mon, 21 Oct 2024 12:27:56 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: a777066e-f238-4b1a-9157-fec0a4b06e41 X-Archives-Hash: 1c2bd857576c493ce88ce640986c333a commit: 5ecbc3c9e907f74fa12599e0fa5672553cc8db15 Author: Sam James gentoo org> AuthorDate: Mon Oct 21 12:27:28 2024 +0000 Commit: Sam James gentoo org> CommitDate: Mon Oct 21 12:27:28 2024 +0000 URL: https://gitweb.gentoo.org/proj/gcc-patches.git/commit/?id=5ecbc3c9 15.0.0: update 75_all_PR117220-uninitialized-clang.patch ... to roll one more patchset with it in, then we can drop it for live. Signed-off-by: Sam James gentoo.org> .../75_all_PR117220-uninitialized-clang.patch | 223 +++++++++++++++++++++ 15.0.0/gentoo/README.history | 4 + 2 files changed, 227 insertions(+) diff --git a/15.0.0/gentoo/75_all_PR117220-uninitialized-clang.patch b/15.0.0/gentoo/75_all_PR117220-uninitialized-clang.patch new file mode 100644 index 0000000..a6acc09 --- /dev/null +++ b/15.0.0/gentoo/75_all_PR117220-uninitialized-clang.patch @@ -0,0 +1,223 @@ +From cba80691251efccf44ab9aecb26558319605c9ea Mon Sep 17 00:00:00 2001 +Message-ID: +From: Jonathan Wakely +Date: Mon, 21 Oct 2024 12:09:36 +0100 +Subject: [PATCH] libstdc++: Fix order of [[...]] and __attribute__((...)) + attrs [PR117220] + +GCC allows these in either order, but Clang doesn't like the C++11-style +[[__nodiscard__]] coming after __attribute__((__always_inline__)). + +libstdc++-v3/ChangeLog: + + PR libstdc++/117220 + * include/bits/stl_iterator.h: Move _GLIBCXX_NODISCARD + annotations after __attribute__((__always_inline__)). +--- a/libstdc++-v3/include/bits/stl_iterator.h ++++ b/libstdc++-v3/include/bits/stl_iterator.h +@@ -1077,13 +1077,13 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + + // Forward iterator requirements + +- __attribute__((__always_inline__)) _GLIBCXX_NODISCARD ++ _GLIBCXX_NODISCARD __attribute__((__always_inline__)) + _GLIBCXX_CONSTEXPR + reference + operator*() const _GLIBCXX_NOEXCEPT + { return *_M_current; } + +- __attribute__((__always_inline__)) _GLIBCXX_NODISCARD ++ _GLIBCXX_NODISCARD __attribute__((__always_inline__)) + _GLIBCXX_CONSTEXPR + pointer + operator->() const _GLIBCXX_NOEXCEPT +@@ -1123,7 +1123,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + + // Random access iterator requirements + +- __attribute__((__always_inline__)) _GLIBCXX_NODISCARD ++ _GLIBCXX_NODISCARD __attribute__((__always_inline__)) + _GLIBCXX_CONSTEXPR + reference + operator[](difference_type __n) const _GLIBCXX_NOEXCEPT +@@ -1135,7 +1135,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + operator+=(difference_type __n) _GLIBCXX_NOEXCEPT + { _M_current += __n; return *this; } + +- __attribute__((__always_inline__)) _GLIBCXX_NODISCARD ++ _GLIBCXX_NODISCARD __attribute__((__always_inline__)) + _GLIBCXX_CONSTEXPR + __normal_iterator + operator+(difference_type __n) const _GLIBCXX_NOEXCEPT +@@ -1147,13 +1147,13 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + operator-=(difference_type __n) _GLIBCXX_NOEXCEPT + { _M_current -= __n; return *this; } + +- __attribute__((__always_inline__)) _GLIBCXX_NODISCARD ++ _GLIBCXX_NODISCARD __attribute__((__always_inline__)) + _GLIBCXX_CONSTEXPR + __normal_iterator + operator-(difference_type __n) const _GLIBCXX_NOEXCEPT + { return __normal_iterator(_M_current - __n); } + +- __attribute__((__always_inline__)) _GLIBCXX_NODISCARD ++ _GLIBCXX_NODISCARD __attribute__((__always_inline__)) + _GLIBCXX_CONSTEXPR + const _Iterator& + base() const _GLIBCXX_NOEXCEPT +@@ -1209,7 +1209,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + #else + // Forward iterator requirements + template +- __attribute__((__always_inline__)) _GLIBCXX_NODISCARD _GLIBCXX_CONSTEXPR ++ _GLIBCXX_NODISCARD __attribute__((__always_inline__)) _GLIBCXX_CONSTEXPR + inline bool + operator==(const __normal_iterator<_IteratorL, _Container>& __lhs, + const __normal_iterator<_IteratorR, _Container>& __rhs) +@@ -1217,7 +1217,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + { return __lhs.base() == __rhs.base(); } + + template +- __attribute__((__always_inline__)) _GLIBCXX_NODISCARD _GLIBCXX_CONSTEXPR ++ _GLIBCXX_NODISCARD __attribute__((__always_inline__)) _GLIBCXX_CONSTEXPR + inline bool + operator==(const __normal_iterator<_Iterator, _Container>& __lhs, + const __normal_iterator<_Iterator, _Container>& __rhs) +@@ -1225,7 +1225,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + { return __lhs.base() == __rhs.base(); } + + template +- __attribute__((__always_inline__)) _GLIBCXX_NODISCARD _GLIBCXX_CONSTEXPR ++ _GLIBCXX_NODISCARD __attribute__((__always_inline__)) _GLIBCXX_CONSTEXPR + inline bool + operator!=(const __normal_iterator<_IteratorL, _Container>& __lhs, + const __normal_iterator<_IteratorR, _Container>& __rhs) +@@ -1233,7 +1233,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + { return __lhs.base() != __rhs.base(); } + + template +- __attribute__((__always_inline__)) _GLIBCXX_NODISCARD _GLIBCXX_CONSTEXPR ++ _GLIBCXX_NODISCARD __attribute__((__always_inline__)) _GLIBCXX_CONSTEXPR + inline bool + operator!=(const __normal_iterator<_Iterator, _Container>& __lhs, + const __normal_iterator<_Iterator, _Container>& __rhs) +@@ -1242,7 +1242,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + + // Random access iterator requirements + template +- __attribute__((__always_inline__)) _GLIBCXX_NODISCARD _GLIBCXX_CONSTEXPR ++ _GLIBCXX_NODISCARD __attribute__((__always_inline__)) _GLIBCXX_CONSTEXPR + inline bool + operator<(const __normal_iterator<_IteratorL, _Container>& __lhs, + const __normal_iterator<_IteratorR, _Container>& __rhs) +@@ -1250,7 +1250,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + { return __lhs.base() < __rhs.base(); } + + template +- __attribute__((__always_inline__)) _GLIBCXX_NODISCARD _GLIBCXX20_CONSTEXPR ++ _GLIBCXX_NODISCARD __attribute__((__always_inline__)) _GLIBCXX20_CONSTEXPR + inline bool + operator<(const __normal_iterator<_Iterator, _Container>& __lhs, + const __normal_iterator<_Iterator, _Container>& __rhs) +@@ -1258,7 +1258,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + { return __lhs.base() < __rhs.base(); } + + template +- __attribute__((__always_inline__)) _GLIBCXX_NODISCARD _GLIBCXX_CONSTEXPR ++ _GLIBCXX_NODISCARD __attribute__((__always_inline__)) _GLIBCXX_CONSTEXPR + inline bool + operator>(const __normal_iterator<_IteratorL, _Container>& __lhs, + const __normal_iterator<_IteratorR, _Container>& __rhs) +@@ -1266,7 +1266,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + { return __lhs.base() > __rhs.base(); } + + template +- __attribute__((__always_inline__)) _GLIBCXX_NODISCARD _GLIBCXX_CONSTEXPR ++ _GLIBCXX_NODISCARD __attribute__((__always_inline__)) _GLIBCXX_CONSTEXPR + inline bool + operator>(const __normal_iterator<_Iterator, _Container>& __lhs, + const __normal_iterator<_Iterator, _Container>& __rhs) +@@ -1274,7 +1274,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + { return __lhs.base() > __rhs.base(); } + + template +- __attribute__((__always_inline__)) _GLIBCXX_NODISCARD _GLIBCXX_CONSTEXPR ++ _GLIBCXX_NODISCARD __attribute__((__always_inline__)) _GLIBCXX_CONSTEXPR + inline bool + operator<=(const __normal_iterator<_IteratorL, _Container>& __lhs, + const __normal_iterator<_IteratorR, _Container>& __rhs) +@@ -1282,7 +1282,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + { return __lhs.base() <= __rhs.base(); } + + template +- __attribute__((__always_inline__)) _GLIBCXX_NODISCARD _GLIBCXX_CONSTEXPR ++ _GLIBCXX_NODISCARD __attribute__((__always_inline__)) _GLIBCXX_CONSTEXPR + inline bool + operator<=(const __normal_iterator<_Iterator, _Container>& __lhs, + const __normal_iterator<_Iterator, _Container>& __rhs) +@@ -1290,7 +1290,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + { return __lhs.base() <= __rhs.base(); } + + template +- __attribute__((__always_inline__)) _GLIBCXX_NODISCARD _GLIBCXX_CONSTEXPR ++ _GLIBCXX_NODISCARD __attribute__((__always_inline__)) _GLIBCXX_CONSTEXPR + inline bool + operator>=(const __normal_iterator<_IteratorL, _Container>& __lhs, + const __normal_iterator<_IteratorR, _Container>& __rhs) +@@ -1298,7 +1298,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + { return __lhs.base() >= __rhs.base(); } + + template +- __attribute__((__always_inline__)) _GLIBCXX_NODISCARD _GLIBCXX_CONSTEXPR ++ _GLIBCXX_NODISCARD __attribute__((__always_inline__)) _GLIBCXX_CONSTEXPR + inline bool + operator>=(const __normal_iterator<_Iterator, _Container>& __lhs, + const __normal_iterator<_Iterator, _Container>& __rhs) +@@ -1326,7 +1326,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + { return __lhs.base() - __rhs.base(); } + + template +- __attribute__((__always_inline__)) _GLIBCXX_NODISCARD _GLIBCXX_CONSTEXPR ++ _GLIBCXX_NODISCARD __attribute__((__always_inline__)) _GLIBCXX_CONSTEXPR + inline typename __normal_iterator<_Iterator, _Container>::difference_type + operator-(const __normal_iterator<_Iterator, _Container>& __lhs, + const __normal_iterator<_Iterator, _Container>& __rhs) +@@ -1334,7 +1334,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + { return __lhs.base() - __rhs.base(); } + + template +- __attribute__((__always_inline__)) _GLIBCXX_NODISCARD _GLIBCXX_CONSTEXPR ++ _GLIBCXX_NODISCARD __attribute__((__always_inline__)) _GLIBCXX_CONSTEXPR + inline __normal_iterator<_Iterator, _Container> + operator+(typename __normal_iterator<_Iterator, _Container>::difference_type + __n, const __normal_iterator<_Iterator, _Container>& __i) +@@ -2990,7 +2990,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + // Unwrap a __normal_iterator to get the underlying iterator + // (usually a pointer). See uses in std::copy, std::fill, etc. + template +- __attribute__((__always_inline__)) _GLIBCXX_NODISCARD ++ _GLIBCXX_NODISCARD __attribute__((__always_inline__)) + _GLIBCXX20_CONSTEXPR + inline _Iterator + __niter_base(__gnu_cxx::__normal_iterator<_Iterator, _Container> __it) +@@ -2999,7 +2999,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + + // Fallback implementation used for iterators that can't be unwrapped. + template +- __attribute__((__always_inline__)) _GLIBCXX_NODISCARD ++ _GLIBCXX_NODISCARD __attribute__((__always_inline__)) + _GLIBCXX20_CONSTEXPR + inline _Iterator + __niter_base(_Iterator __it) +@@ -3071,7 +3071,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + + // No need to wrap, iterator already has the right type. + template +- __attribute__((__always_inline__)) _GLIBCXX_NODISCARD ++ _GLIBCXX_NODISCARD __attribute__((__always_inline__)) + _GLIBCXX20_CONSTEXPR + inline _Iterator + __niter_wrap(const _Iterator&, _Iterator __res) +-- +2.47.0 + diff --git a/15.0.0/gentoo/README.history b/15.0.0/gentoo/README.history index 7cc59ef..da76e70 100644 --- a/15.0.0/gentoo/README.history +++ b/15.0.0/gentoo/README.history @@ -1,3 +1,7 @@ +19 21 October 2024 + + U 75_all_PR117220-uninitialized-clang.patch + 18 21 October 2024 + 75_all_PR117220-uninitialized-clang.patch