Commit 272481b6 authored by Circle Automation's avatar Circle Automation
Browse files

import gcc-8.5.0-26.el8_10

No related merge requests found
Showing with 4754 additions and 9 deletions
+4754 -9
The change is based on:
commit 190c644c06369766aa2537851ddbf83b1231b65b
Author: Philipp Fent <fent@in.tum.de>
Date: Sun Sep 4 20:47:34 2022 +0200
libstdc++: Fix pretty printer tests of tuple indexes
but it is adapted to GCC8 since it does not have the tuple inheritance change,
which is:
commit 91e6226f880b048275a7ceedef716e159c7cefd9
Author: Jonathan Wakely <jwakely@redhat.com>
Date: Fri Aug 7 17:13:56 2020 +0100
libstdc++: Remove inheritance from elements in std::tuple
diff --git a/libstdc++-v3/testsuite/libstdc++-prettyprinters/48362.cc b/libstdc++-v3/testsuite/libstdc++-prettyprinters/48362.cc
index cc91803e247..af335d0d3c7 100644
--- a/libstdc++-v3/testsuite/libstdc++-prettyprinters/48362.cc
+++ b/libstdc++-v3/testsuite/libstdc++-prettyprinters/48362.cc
@@ -29,7 +29,7 @@ main()
// { dg-final { note-test t1 {empty std::tuple} } }
std::tuple<std::string, int, std::tuple<>> t2{ "Johnny", 5, {} };
-// { dg-final { regexp-test t2 {std::tuple containing = {\[1\] = "Johnny", \[2\] = 5, \[3\] = {<std::(__8::)?tuple<>> = empty std::tuple, <No data fields>}}} } }
+// { dg-final { regexp-test t2 {std::tuple containing = {\[0\] = "Johnny", \[1\] = 5, \[2\] = {<std::(__8::)?tuple<>> = empty std::tuple, <No data fields>}}} } }
std::cout << "\n";
return 0; // Mark SPOT
NullablePointer support not available, so drop these tests.
diff --git a/libstdc++-v3/testsuite/libstdc++-prettyprinters/cxx11.cc b/libstdc++-v3/testsuite/libstdc++-prettyprinters/cxx11.cc.new
index 2f75d12..6fb19c3 100644
--- a/libstdc++-v3/testsuite/libstdc++-prettyprinters/cxx11.cc
+++ b/libstdc++-v3/testsuite/libstdc++-prettyprinters/cxx11.cc
@@ -145,20 +145,6 @@ main()
std::unique_ptr<data>& rarrptr = arrptr;
// { dg-final { regexp-test rarrptr {std::unique_ptr.datum \[\]. = {get\(\) = 0x.*}} } }
- struct Deleter
- {
- int deleter_member = -1;
- using pointer = __gnu_test::NullablePointer<void>;
- void operator()(pointer) const noexcept { }
- };
- static_assert( !std::is_empty<Deleter>(), "Deleter is not empty" );
- static_assert( std::is_empty<Deleter::pointer>(), "but pointer is empty" );
-
- std::unique_ptr<int, Deleter> empty_ptr;
-// { dg-final { note-test empty_ptr {std::unique_ptr<int> = {get() = {<No data fields>}}} } }
- std::unique_ptr<int, Deleter>& rempty_ptr = empty_ptr;
-// { dg-final { note-test rempty_ptr {std::unique_ptr<int> = {get() = {<No data fields>}}} } }
-
struct Deleter_pr103086
{
int deleter_member = -1;
Revert this commit for libstdc++-prettyprinters (only cxx17, 91997
doesn't exist in this tree) since gcc8 does not default to c++17. The
context has been adapted but the change should be exact:
commit 0498d2d09a2364aae1e6b5e085c8ebb8fc517684
Author: Jonathan Wakely <jwakely@redhat.com>
Date: Mon May 10 16:22:54 2021 +0100
libstdc++: Remove redundant -std=gnu++17 option from remaining tests
Also remove the filesystem tests since it's not supported by RHEL8 gcc.
diff --git b/libstdc++-v3/testsuite/libstdc++-prettyprinters/cxx17.cc a/libstdc++-v3/testsuite/libstdc++-prettyprinters/cxx17.cc
index 72c66d3b785..98e21e963fe 100644
--- b/libstdc++-v3/testsuite/libstdc++-prettyprinters/cxx17.cc
+++ a/libstdc++-v3/testsuite/libstdc++-prettyprinters/cxx17.cc
@@ -1,4 +1,4 @@
-// { dg-options "-g -O0" }
+// { dg-options "-g -O0 -std=gnu++17" }
// { dg-do run { target c++17 } }
// Copyright (C) 2014-2024 Free Software Foundation, Inc.
@@ -18,7 +18,6 @@
// with this library; see the file COPYING3. If not see
// <http://www.gnu.org/licenses/>.
-#include <filesystem>
#include <any>
#include <optional>
#include <variant>
@@ -120,13 +119,6 @@ main()
// { dg-final { regexp-test q {std::shared_ptr.int \[2\]. \(use count 2, weak count 1\) = {get\(\) = 0x.*}} } }
// { dg-final { regexp-test wq {std::weak_ptr.int \[2\]. \(use count 2, weak count 1\) = {get\(\) = 0x.*}} } }
- std::filesystem::path path0;
-// { dg-final { note-test path0 {filesystem::path ""} } }
- std::filesystem::path path1("filename");
-// { dg-final { note-test path1 {filesystem::path "filename"} } }
- std::filesystem::path path2("/dir/.");
-// { dg-final { note-test path2 {filesystem::path "/dir/." = {[root-directory] = "/", [1] = "dir", [2] = "."}} } }
-
std::cout << "\n";
return 0; // Mark SPOT
}
This diff is collapsed.
This diff is collapsed.
%global source_date_epoch_from_changelog 1
%global DATE 20210514
%global gitrev a3253c88425835d5b339d6998a1110a66ccd8b44
%global gcc_version 8.5.0
%global gcc_major 8
# Note, gcc_release must be integer, if you want to add suffixes to
# %%{release}, append them after %%{gcc_release} on Release: line.
%global gcc_release 24
%global gcc_release 26
%global nvptx_tools_gitrev c28050f60193b3b95a18866a96f03334e874e78f
%global nvptx_newlib_gitrev aadc8eb0ec43b7cd0dd2dfb484bae63c8b05ef24
%global _unpackaged_files_terminate_build 0
......@@ -309,9 +310,16 @@ Patch48: gcc8-pr111070.patch
Patch49: gcc8-RHEL-32886.patch
Patch50: gcc8-pr100508.patch
Patch1000: nvptx-tools-no-ptxas.patch
Patch1001: nvptx-tools-build.patch
Patch1002: nvptx-tools-glibc.patch
# Any patches changing libstdc++-v3/python and its tests should go after this.
Patch1000: gcc8-libstdc++-prettyprinter-update-14.patch
Patch1001: gcc8-libstdc++-prettyprinter-update-14-tests.patch
Patch1002: gcc8-libstdc++-prettyprinter-update-14-tests-48362.patch
Patch1003: gcc8-libstdc++-prettyprinter-update-14-tests-cxx11.patch
Patch1004: gcc8-libstdc++-prettyprinter-update-14-tests-cxx17.patch
Patch2000: nvptx-tools-no-ptxas.patch
Patch2001: nvptx-tools-build.patch
Patch2002: nvptx-tools-glibc.patch
# On ARM EABI systems, we do want -gnueabi to be part of the
......@@ -934,10 +942,16 @@ so that there cannot be any synchronization problems.
%patch49 -p0 -b .32886~
%patch50 -p1 -b .pr100508~
%patch1000 -p1 -b .libstdc++-prettyprinter-update-14~
%patch1001 -p1 -b .libstdc++-prettyprinter-update-14-tests~
%patch1002 -p1 -b .libstdc++-prettyprinter-update-14-tests-48362~
%patch1003 -p1 -b .libstdc++-prettyprinter-update-14-tests-cxx11~
%patch1004 -p1 -b .libstdc++-prettyprinter-update-14-tests-cxx17~
cd nvptx-tools-%{nvptx_tools_gitrev}
%patch1000 -p1 -b .nvptx-tools-no-ptxas~
%patch1001 -p1 -b .nvptx-tools-build~
%patch1002 -p1 -b .nvptx-tools-glibc~
%patch2000 -p1 -b .nvptx-tools-no-ptxas~
%patch2001 -p1 -b .nvptx-tools-build~
%patch2002 -p1 -b .nvptx-tools-glibc~
cd ..
echo 'Red Hat %{version}-%{gcc_release}' > gcc/DEV-PHASE
......@@ -1558,9 +1572,9 @@ mv -f %{buildroot}%{_prefix}/%{_lib}/libstdc++*gdb.py* \
%{buildroot}%{_datadir}/gdb/auto-load/%{_prefix}/%{_lib}/
pushd ../libstdc++-v3/python
for i in `find . -name \*.py`; do
touch -r $i %{buildroot}%{_prefix}/share/gcc-%{gcc_major}/python/$i
touch -d @$SOURCE_DATE_EPOCH %{buildroot}%{_prefix}/share/gcc-%{gcc_major}/python/$i
done
touch -r hook.in %{buildroot}%{_datadir}/gdb/auto-load/%{_prefix}/%{_lib}/libstdc++*gdb.py
touch -d @$SOURCE_DATE_EPOCH %{buildroot}%{_datadir}/gdb/auto-load/%{_prefix}/%{_lib}/libstdc++*gdb.py
popd
for f in `find %{buildroot}%{_prefix}/share/gcc-%{gcc_major}/python/ \
%{buildroot}%{_datadir}/gdb/auto-load/%{_prefix}/%{_lib}/ -name \*.py`; do
......@@ -3340,6 +3354,12 @@ fi
%{ANNOBIN_GCC_PLUGIN_DIR}/gcc-annobin.so.0.0.0
%changelog
* Fri Mar 21 2025 Siddhesh Poyarekar <siddhesh@redhat.com> 8.5.0-26
- Pin modification time for python files to SOURCE_DATE_EPOCH (RHEL-50290).
* Fri Feb 28 2025 Siddhesh Poyarekar <siddhesh@redhat.com> 8.5.0-25
- Sync libstdc++ pretty printers to latest GTS (RHEL-50290).
* Mon Feb 24 2025 Marek Polacek <polacek@redhat.com> 8.5.0-24
- don't reuse DEBUG_EXPRs with vector type (PR middle-end/100508, RHEL-79501)
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment