From 063f63dafb219b990a54ae8e4f4e93ed226cdb13 Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Jun 17 2021 08:57:18 +0000 Subject: 11.1.1-5 --- diff --git a/gcc.spec b/gcc.spec index e2cfbe4..c3ec569 100644 --- a/gcc.spec +++ b/gcc.spec @@ -4,7 +4,7 @@ %global gcc_major 11 # 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 4 +%global gcc_release 5 %global nvptx_tools_gitrev 5f6f343a302d620b0868edab376c00b15741e39e %global newlib_cygwin_gitrev 50e2a63b04bdd018484605fbb954fd1bd5147fa0 %global _unpackaged_files_terminate_build 0 @@ -265,7 +265,6 @@ Patch10: gcc11-Wno-format-security.patch Patch11: gcc11-rh1574936.patch Patch12: gcc11-d-shared-libphobos.patch Patch13: gcc11-pr99341-revert.patch -Patch14: gcc11-pr100797.patch Patch100: gcc11-fortran-fdec-duplicates.patch Patch101: gcc11-fortran-flogical-as-integer.patch @@ -789,7 +788,6 @@ to NVidia PTX capable devices if available. %endif %patch12 -p0 -b .d-shared-libphobos~ %patch13 -p0 -b .pr99341-revert~ -%patch14 -p0 -b .pr100797~ %if 0%{?rhel} >= 9 %patch100 -p1 -b .fortran-fdec-duplicates~ @@ -3132,7 +3130,26 @@ end %endif %changelog -* Mon Jun 14 2021 Florian Weimer - 11.1.1-4 +* Thu Jun 17 2021 Jakub Jelinek 11.1.1-5 +- update from releases/gcc-11-branch + - PRs bootstrap/100731, c++/91706, c++/91859, c++/95719, c++/100065, + c++/100102, c++/100580, c++/100666, c++/100796, c++/100797, + c++/100862, c++/100946, c++/100963, c++/101029, c++/101078, c/100902, + c/100920, d/100882, d/100935, d/100964, d/100967, d/100999, + debug/100852, fortran/82376, fortran/98301, fortran/99839, + fortran/100965, ipa/100791, libstdc++/98842, libstdc++/100475, + libstdc++/100577, libstdc++/100631, libstdc++/100639, + libstdc++/100676, libstdc++/100690, libstdc++/100768, + libstdc++/100770, libstdc++/100824, libstdc++/100833, + libstdc++/100889, libstdc++/100894, libstdc++/100900, + libstdc++/100982, libstdc++/101034, libstdc++/101055, + middle-end/100576, middle-end/100898, middle-end/101009, + preprocessor/100646, rtl-optimization/100342, rtl-optimization/100590, + rtl-optimization/101008, target/100333, target/100885, target/100887, + target/101046, testsuite/100750, tree-optimization/100934, + tree-optimization/100981 + +* Mon Jun 14 2021 Florian Weimer 11.1.1-4 - NVR bump to enable rebuild in side tag * Mon May 31 2021 Jakub Jelinek 11.1.1-3 diff --git a/gcc11-pr100797.patch b/gcc11-pr100797.patch deleted file mode 100644 index ff85ade..0000000 --- a/gcc11-pr100797.patch +++ /dev/null @@ -1,91 +0,0 @@ -2021-05-27 Jason Merrill - - PR c++/100797 - PR c++/95719 - * call.c (build_over_call): Adjust base_binfo in - resolves_to_fixed_type_p case. - - * g++.dg/inherit/virtual15.C: New test. - ---- gcc/cp/call.c -+++ gcc/cp/call.c -@@ -9152,18 +9152,32 @@ build_over_call (struct z_candidate *cand, int flags, tsubst_flags_t complain) - if (base_binfo == error_mark_node) - return error_mark_node; - } -- tree converted_arg = build_base_path (PLUS_EXPR, arg, -- base_binfo, 1, complain); - - /* If we know the dynamic type of the object, look up the final overrider - in the BINFO. */ - if (DECL_VINDEX (fn) && (flags & LOOKUP_NONVIRTUAL) == 0 - && resolves_to_fixed_type_p (arg)) - { -- fn = lookup_vfn_in_binfo (DECL_VINDEX (fn), base_binfo); -- flags |= LOOKUP_NONVIRTUAL; -+ tree ov = lookup_vfn_in_binfo (DECL_VINDEX (fn), base_binfo); -+ -+ /* And unwind base_binfo to match. If we don't find the type we're -+ looking for in BINFO_INHERITANCE_CHAIN, we're looking at diamond -+ inheritance; for now do a normal virtual call in that case. */ -+ tree octx = DECL_CONTEXT (ov); -+ tree obinfo = base_binfo; -+ while (obinfo && !SAME_BINFO_TYPE_P (BINFO_TYPE (obinfo), octx)) -+ obinfo = BINFO_INHERITANCE_CHAIN (obinfo); -+ if (obinfo) -+ { -+ fn = ov; -+ base_binfo = obinfo; -+ flags |= LOOKUP_NONVIRTUAL; -+ } - } - -+ tree converted_arg = build_base_path (PLUS_EXPR, arg, -+ base_binfo, 1, complain); -+ - argarray[j++] = converted_arg; - parm = TREE_CHAIN (parm); - if (first_arg != NULL_TREE) ---- gcc/testsuite/g++.dg/inherit/virtual15.C -+++ gcc/testsuite/g++.dg/inherit/virtual15.C -@@ -0,0 +1,18 @@ -+// PR c++/100797 -+// { dg-do run } -+ -+bool ok = false; -+struct S1 { virtual ~S1() {} }; -+struct S2 { virtual void f1() = 0; }; -+struct S3: S1, S2 { -+ void f1() { f2(); } -+ virtual void f2() = 0; -+}; -+struct S4: S3 { -+ void f2() { ok = true; } -+ using S2::f1; -+}; -+int main() { -+ S4().f1(); -+ if (!ok) __builtin_abort (); -+} ---- gcc/testsuite/g++.dg/inherit/virtual15a.C -+++ gcc/testsuite/g++.dg/inherit/virtual15a.C -@@ -0,0 +1,19 @@ -+// PR c++/100797 plus diamond inheritance -+// { dg-do run } -+ -+bool ok = false; -+struct S1 { virtual ~S1() {} }; -+struct S2 { virtual void f1() = 0; }; -+struct S3: S1, virtual S2 { -+ void f1() { f2(); } -+ virtual void f2() = 0; -+}; -+struct SX: virtual S2 { }; -+struct S4: SX, S3 { -+ void f2() { ok = true; } -+ using S2::f1; -+}; -+int main() { -+ S4().f1(); -+ if (!ok) __builtin_abort (); -+}