From e2b5de2c77e13e623a7e20ec8a1aeb75e0984a01 Mon Sep 17 00:00:00 2001 From: Virendra Thakur Date: Wed, 1 Mar 2023 12:47:03 +0530 Subject: gcc: Fix inconsistent noexcept specifier for valarray in libstdc++ Backport of gcc upstream commit 2b2d97fc545635a0f6aa9c9ee3b017394bc494bf to gcc release 9.5.0. This fix is available to all release-branches except releases/gcc-9 because upstream do not support gcc-9 now. (From OE-Core rev: 9779b66162a014f26594bdde43afdc4332617240) Signed-off-by: Virendra Thakur Signed-off-by: Steve Sakoman Signed-off-by: Richard Purdie --- meta/recipes-devtools/gcc/gcc-9.5.inc | 1 + ...-inconsistent-noexcept-specific-for-valar.patch | 44 ++++++++++++++++++++++ 2 files changed, 45 insertions(+) create mode 100644 meta/recipes-devtools/gcc/gcc-9.5/0002-libstdc-Fix-inconsistent-noexcept-specific-for-valar.patch (limited to 'meta') diff --git a/meta/recipes-devtools/gcc/gcc-9.5.inc b/meta/recipes-devtools/gcc/gcc-9.5.inc index 6a0a892b10..ec28246bf3 100644 --- a/meta/recipes-devtools/gcc/gcc-9.5.inc +++ b/meta/recipes-devtools/gcc/gcc-9.5.inc @@ -69,6 +69,7 @@ SRC_URI = "\ file://0037-CVE-2019-14250-Check-zero-value-in-simple_object_elf.patch \ file://0038-gentypes-genmodes-Do-not-use-__LINE__-for-maintainin.patch \ file://0039-process_alt_operands-Don-t-match-user-defined-regs-o.patch \ + file://0002-libstdc-Fix-inconsistent-noexcept-specific-for-valar.patch \ " S = "${TMPDIR}/work-shared/gcc-${PV}-${PR}/gcc-${PV}" SRC_URI[sha256sum] = "27769f64ef1d4cd5e2be8682c0c93f9887983e6cfd1a927ce5a0a2915a95cf8f" diff --git a/meta/recipes-devtools/gcc/gcc-9.5/0002-libstdc-Fix-inconsistent-noexcept-specific-for-valar.patch b/meta/recipes-devtools/gcc/gcc-9.5/0002-libstdc-Fix-inconsistent-noexcept-specific-for-valar.patch new file mode 100644 index 0000000000..506064bfc2 --- /dev/null +++ b/meta/recipes-devtools/gcc/gcc-9.5/0002-libstdc-Fix-inconsistent-noexcept-specific-for-valar.patch @@ -0,0 +1,44 @@ +From 60d966708d7cf105dccf128d2b7a38b0b2580a1a Mon Sep 17 00:00:00 2001 +From: Jonathan Wakely +Date: Fri, 5 Nov 2021 21:42:20 +0000 +Subject: [PATCH] libstdc++: Fix inconsistent noexcept-specific for valarray + begin/end + +These declarations should be noexcept after I added it to the +definitions in . + +libstdc++-v3/ChangeLog: + + * include/bits/range_access.h (begin(valarray), end(valarray)): + Add noexcept. + +(cherry picked from commit 2b2d97fc545635a0f6aa9c9ee3b017394bc494bf) + +Upstream-Status: Backport [https://github.com/hkaelber/gcc/commit/2b2d97fc545635a0f6aa9c9ee3b017394bc494bf] +Signed-off-by: Virendra Thakur + +--- + libstdc++-v3/include/bits/range_access.h | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/libstdc++-v3/include/bits/range_access.h b/libstdc++-v3/include/bits/range_access.h +index 3d99ea92027..4736e75fda1 100644 +--- a/libstdc++-v3/include/bits/range_access.h ++++ b/libstdc++-v3/include/bits/range_access.h +@@ -101,10 +101,10 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + + template class valarray; + // These overloads must be declared for cbegin and cend to use them. +- template _Tp* begin(valarray<_Tp>&); +- template const _Tp* begin(const valarray<_Tp>&); +- template _Tp* end(valarray<_Tp>&); +- template const _Tp* end(const valarray<_Tp>&); ++ template _Tp* begin(valarray<_Tp>&) noexcept; ++ template const _Tp* begin(const valarray<_Tp>&) noexcept; ++ template _Tp* end(valarray<_Tp>&) noexcept; ++ template const _Tp* end(const valarray<_Tp>&) noexcept; + + /** + * @brief Return an iterator pointing to the first element of +-- +2.25.1 \ No newline at end of file -- cgit v1.2.3-54-g00ecf