aboutsummaryrefslogtreecommitdiff
path: root/packages/gcc
diff options
context:
space:
mode:
authorHans-Christian Noren Egtvedt <hegtvedt@cisco.com>2022-04-22 00:03:38 +0200
committerChris Packham <judge.packham@gmail.com>2022-05-08 13:29:34 +1200
commit3c94c6c67832aef663e336cef1bd04cccfeb3f47 (patch)
treef68dacd7647fad7117f09ee596787c72e0801763 /packages/gcc
parent8fa98eeeff9bc53478d97ef722f366fea151ae64 (diff)
downloadcrosstool-ng-3c94c6c67832aef663e336cef1bd04cccfeb3f47.tar.gz
crosstool-ng-3c94c6c67832aef663e336cef1bd04cccfeb3f47.tar.bz2
crosstool-ng-3c94c6c67832aef663e336cef1bd04cccfeb3f47.zip
gcc: bump GCC 11 to latest release 11.3.0
Remove patches applied upstream we no longer need to maintain here. Signed-off-by: Hans-Christian Noren Egtvedt <hegtvedt@cisco.com>
Diffstat (limited to 'packages/gcc')
-rw-r--r--packages/gcc/11.2.0/0005-libstdc-Add-nostdinc-for-c-17-sources-PR100017.patch71
-rw-r--r--packages/gcc/11.2.0/0011-powerpc-Fix-asm-machine-directive-for-some-CPUs.patch59
-rw-r--r--packages/gcc/11.2.0/0012-c-designator-and-anon-struct-PR101767.patch71
-rw-r--r--packages/gcc/11.2.0/0013-c-designated-init-and-aggregate-members-PR103337.patch240
-rw-r--r--packages/gcc/11.2.0/chksum8
-rw-r--r--packages/gcc/11.3.0/0000-libtool-leave-framework-alone.patch (renamed from packages/gcc/11.2.0/0000-libtool-leave-framework-alone.patch)0
-rw-r--r--packages/gcc/11.3.0/0001-gcc-plugin-POSIX-include-sys-select-h.patch (renamed from packages/gcc/11.2.0/0001-gcc-plugin-POSIX-include-sys-select-h.patch)0
-rw-r--r--packages/gcc/11.3.0/0002-arm-softfloat-libgcc.patch (renamed from packages/gcc/11.2.0/0002-arm-softfloat-libgcc.patch)0
-rw-r--r--packages/gcc/11.3.0/0003-libgcc-disable-split-stack-nothreads.patch (renamed from packages/gcc/11.2.0/0003-libgcc-disable-split-stack-nothreads.patch)0
-rw-r--r--packages/gcc/11.3.0/0004-Remove-use-of-include_next-from-c-headers.patch (renamed from packages/gcc/11.2.0/0004-Remove-use-of-include_next-from-c-headers.patch)0
-rw-r--r--packages/gcc/11.3.0/0005-arc-Update-ZOL-pattern.patch (renamed from packages/gcc/11.2.0/0006-arc-Update-ZOL-pattern.patch)0
-rw-r--r--packages/gcc/11.3.0/0006-arc-Update-u-maddhisi4-patterns.patch (renamed from packages/gcc/11.2.0/0007-arc-Update-u-maddhisi4-patterns.patch)0
-rw-r--r--packages/gcc/11.3.0/0007-arc-Fix-maddhisi-patterns.patch (renamed from packages/gcc/11.2.0/0008-arc-Fix-maddhisi-patterns.patch)0
-rw-r--r--packages/gcc/11.3.0/0008-Darwin-aarch64-Initial-support-for-the-self-host-dri.patch (renamed from packages/gcc/11.2.0/0009-Darwin-aarch64-Initial-support-for-the-self-host-dri.patch)0
-rw-r--r--packages/gcc/11.3.0/0009-libstdc-Check-for-TLS-support-on-mingw-cross-compile.patch (renamed from packages/gcc/11.2.0/0010-libstdc-Check-for-TLS-support-on-mingw-cross-compile.patch)15
-rw-r--r--packages/gcc/11.3.0/chksum8
-rw-r--r--packages/gcc/11.3.0/version.desc (renamed from packages/gcc/11.2.0/version.desc)0
17 files changed, 12 insertions, 460 deletions
diff --git a/packages/gcc/11.2.0/0005-libstdc-Add-nostdinc-for-c-17-sources-PR100017.patch b/packages/gcc/11.2.0/0005-libstdc-Add-nostdinc-for-c-17-sources-PR100017.patch
deleted file mode 100644
index 4a4daf65..00000000
--- a/packages/gcc/11.2.0/0005-libstdc-Add-nostdinc-for-c-17-sources-PR100017.patch
+++ /dev/null
@@ -1,71 +0,0 @@
-From 4fde88e5dd152fe866a97b12e0f8229970d15cb3 Mon Sep 17 00:00:00 2001
-From: Jonathan Wakely <jwakely@redhat.com>
-Date: Fri, 7 Jan 2022 15:21:03 +0000
-Subject: [PATCH] libstdc++: Add -nostdinc++ for c++17 sources [PR100017]
-
-When building a build!=host compiler, the just-built gcc can't be used
-to build the target libstdc++ (because it is built for the host triplet,
-not the build triplet). The top-level configure.ac sets up the build
-flags for libstdc++ (and other "raw_cxx" libs) like this:
-
-GCC_TARGET_TOOL(c++ for libstdc++, RAW_CXX_FOR_TARGET, CXX,
- [gcc/xgcc -shared-libgcc -B$$r/$(HOST_SUBDIR)/gcc -nostdinc++ -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/libsupc++/.libs],
- c++)
-
-The -nostdinc++ flag is only used for the IN-TREE-TOOL, i.e. when using
-the just-built gcc/xgcc compiler. This means that the cross-compiler
-used to build libstdc++ will add its own libstdc++ headers to the
-include path. That results in the #include <cfenv> in
-src/c++17/floating_to_chars.cc and src/c++17/floating_from_chars.cc
-doing #include_next <fenv.h> and finding the libstdc++ fenv.h wrapper
-from the host compiler. Because that has the same include guard as the
-<fenv.h> in the libstdc++ we're trying to build, we never reach the
-underlying <fenv.h> from libc. That results in several errors of the
-form:
-
-error: 'fenv_t' has not been declared in '::'
-
-The most correct fix would be to add -nostdinc++ to the
-RAW_CXX_FOR_TARGET variable in configure.ac, or the
-RAW_CXX_TARGET_EXPORTS variable in Makefile.tpl.
-
-Another solution would be to make the libstdc++ <fenv.h> wrapper use
-_GLIBCXX_INCLUDE_NEXT_C_HEADERS like our <stdlib.h> and other C header
-wrappers.
-
-For now though, the simplest and safest solution is to just add
--nostdinc++ to the CXXFLAGS used for src/c++17/*.cc, which is what this
-does.
-
-libstdc++-v3/ChangeLog:
-
- PR libstdc++/100017
- * src/c++17/Makefile.am (AM_CXXFLAGS): Add -nostdinc++.
- * src/c++17/Makefile.in: Regenerate.
----
- libstdc++-v3/src/c++17/Makefile.am | 2 +-
- libstdc++-v3/src/c++17/Makefile.in | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
---- a/libstdc++-v3/src/c++17/Makefile.am
-+++ b/libstdc++-v3/src/c++17/Makefile.am
-@@ -79,7 +79,7 @@
- # OPTIMIZE_CXXFLAGS on the compile line so that -O2 can be overridden
- # as the occasion calls for it.
- AM_CXXFLAGS = \
-- -std=gnu++17 \
-+ -std=gnu++17 -nostdinc++ \
- $(glibcxx_lt_pic_flag) $(glibcxx_compiler_shared_flag) \
- $(XTEMPLATE_FLAGS) $(VTV_CXXFLAGS) \
- $(WARN_CXXFLAGS) $(OPTIMIZE_CXXFLAGS) $(CONFIG_CXXFLAGS) \
---- a/libstdc++-v3/src/c++17/Makefile.in
-+++ b/libstdc++-v3/src/c++17/Makefile.in
-@@ -455,7 +455,7 @@
- # OPTIMIZE_CXXFLAGS on the compile line so that -O2 can be overridden
- # as the occasion calls for it.
- AM_CXXFLAGS = \
-- -std=gnu++17 \
-+ -std=gnu++17 -nostdinc++ \
- $(glibcxx_lt_pic_flag) $(glibcxx_compiler_shared_flag) \
- $(XTEMPLATE_FLAGS) $(VTV_CXXFLAGS) \
- $(WARN_CXXFLAGS) $(OPTIMIZE_CXXFLAGS) $(CONFIG_CXXFLAGS) \
diff --git a/packages/gcc/11.2.0/0011-powerpc-Fix-asm-machine-directive-for-some-CPUs.patch b/packages/gcc/11.2.0/0011-powerpc-Fix-asm-machine-directive-for-some-CPUs.patch
deleted file mode 100644
index 424cb1d1..00000000
--- a/packages/gcc/11.2.0/0011-powerpc-Fix-asm-machine-directive-for-some-CPUs.patch
+++ /dev/null
@@ -1,59 +0,0 @@
-From 3cb53c10831be59d967d9dce8e7980fee4703500 Mon Sep 17 00:00:00 2001
-From: Sebastian Huber <sebastian.huber@embedded-brains.de>
-Date: Tue, 18 Jan 2022 12:44:53 +0100
-Subject: [PATCH] powerpc: Fix asm machine directive for some CPUs
-
-For some CPUs, the assembler machine directive cannot be determined by ISA
-flags.
-
-gcc/
-
- PR target/104090
- * config/rs6000/rs6000.c (rs6000_machine_from_flags): Use also
- rs6000_cpu.
----
- gcc/config/rs6000/rs6000.c | 28 ++++++++++++++++++++++++++++
- 1 file changed, 28 insertions(+)
-
-diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c
-index c4f5c53932c7..9b1c3a8b5eae 100644
---- a/gcc/config/rs6000/rs6000.c
-+++ b/gcc/config/rs6000/rs6000.c
-@@ -5766,6 +5766,34 @@ const char *rs6000_machine;
- const char *
- rs6000_machine_from_flags (void)
- {
-+ /* For some CPUs, the machine cannot be determined by ISA flags. We have to
-+ check them first. */
-+ switch (rs6000_cpu)
-+ {
-+ case PROCESSOR_PPC8540:
-+ case PROCESSOR_PPC8548:
-+ return "e500";
-+
-+ case PROCESSOR_PPCE300C2:
-+ case PROCESSOR_PPCE300C3:
-+ return "e300";
-+
-+ case PROCESSOR_PPCE500MC:
-+ return "e500mc";
-+
-+ case PROCESSOR_PPCE500MC64:
-+ return "e500mc64";
-+
-+ case PROCESSOR_PPCE5500:
-+ return "e5500";
-+
-+ case PROCESSOR_PPCE6500:
-+ return "e6500";
-+
-+ default:
-+ break;
-+ }
-+
- HOST_WIDE_INT flags = rs6000_isa_flags;
-
- /* Disable the flags that should never influence the .machine selection. */
---
-2.35.1
-
diff --git a/packages/gcc/11.2.0/0012-c-designator-and-anon-struct-PR101767.patch b/packages/gcc/11.2.0/0012-c-designator-and-anon-struct-PR101767.patch
deleted file mode 100644
index 65f3237e..00000000
--- a/packages/gcc/11.2.0/0012-c-designator-and-anon-struct-PR101767.patch
+++ /dev/null
@@ -1,71 +0,0 @@
-From b94c95fc1199bfa2c7ab577921b07ef545976cac Mon Sep 17 00:00:00 2001
-From: Jason Merrill <jason@redhat.com>
-Date: Fri, 18 Mar 2022 14:36:19 -0400
-Subject: c++: designator and anon struct [PR101767]
-
-We found .x in the anonymous struct, but then didn't find .y there; we
-should decide that means we're done with the struct rather than that the
-code is wrong.
-
- PR c++/101767
-
-gcc/cp/ChangeLog:
-
- * decl.c (reshape_init_class): Back out of anon struct
- if a designator doesn't match.
-
-gcc/testsuite/ChangeLog:
-
- * g++.dg/ext/anon-struct10.C: New test.
----
- gcc/cp/decl.c | 5 +++++
- gcc/testsuite/g++.dg/ext/anon-struct10.C | 21 +++++++++++++++++++++
- 2 files changed, 26 insertions(+)
- create mode 100644 gcc/testsuite/g++.dg/ext/anon-struct10.C
-
-diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c
-index 41094c891fc..6d3e764fb14 100644
---- a/gcc/cp/decl.c
-+++ b/gcc/cp/decl.c
-@@ -6437,6 +6437,11 @@ reshape_init_class (tree type, reshape_iter *d, bool first_initializer_p,
- return error_mark_node;
- }
-
-+ if (!field && ANON_AGGR_TYPE_P (type))
-+ /* Apparently the designator isn't for a member of this anonymous
-+ struct, so head back to the enclosing class. */
-+ break;
-+
- if (!field || TREE_CODE (field) != FIELD_DECL)
- {
- if (complain & tf_error)
-diff --git a/gcc/testsuite/g++.dg/ext/anon-struct10.C b/gcc/testsuite/g++.dg/ext/anon-struct10.C
-new file mode 100644
-index 00000000000..9b01bf3fada
---- /dev/null
-+++ b/gcc/testsuite/g++.dg/ext/anon-struct10.C
-@@ -0,0 +1,21 @@
-+// PR c++/101767
-+// { dg-do compile { target c++11 } }
-+// { dg-additional-options "-Wno-pedantic" }
-+
-+typedef struct {
-+ struct {
-+ int x;
-+ };
-+ union {
-+ int y;
-+ float z;
-+ };
-+} S;
-+
-+void foo(void)
-+{
-+ [[maybe_unused]] S a = {
-+ .x = 1,
-+ .y = 0
-+ };
-+}
---
-2.31.1
-
diff --git a/packages/gcc/11.2.0/0013-c-designated-init-and-aggregate-members-PR103337.patch b/packages/gcc/11.2.0/0013-c-designated-init-and-aggregate-members-PR103337.patch
deleted file mode 100644
index 4133c9c7..00000000
--- a/packages/gcc/11.2.0/0013-c-designated-init-and-aggregate-members-PR103337.patch
+++ /dev/null
@@ -1,240 +0,0 @@
-From 2b2f575e6f27acc0c7ba6a3affc760bf2b96a84b Mon Sep 17 00:00:00 2001
-From: Jason Merrill <jason@redhat.com>
-Date: Mon, 21 Mar 2022 09:57:28 -0400
-Subject: c++: designated init and aggregate members [PR103337]
-
-Our C++20 designated initializer handling was broken with members of class
-type; we would find the relevant member and then try to find a member of
-the member with the same name. Or we would sometimes ignore the designator
-entirely. The former problem is fixed by the change to reshape_init_class,
-the latter by the change to reshape_init_r.
-
- PR c++/103337
- PR c++/102740
- PR c++/103299
- PR c++/102538
-
-gcc/cp/ChangeLog:
-
- * decl.c (reshape_init_class): Avoid looking for designator
- after we found it.
- (reshape_init_r): Keep looking for designator.
-
-gcc/testsuite/ChangeLog:
-
- * g++.dg/ext/flexary3.C: Remove one error.
- * g++.dg/parse/pr43765.C: Likewise.
- * g++.dg/cpp2a/desig22.C: New test.
- * g++.dg/cpp2a/desig23.C: New test.
- * g++.dg/cpp2a/desig24.C: New test.
- * g++.dg/cpp2a/desig25.C: New test.
----
- gcc/cp/decl.c | 47 +++++++++++++++++++++++++---
- gcc/testsuite/g++.dg/cpp2a/desig22.C | 11 +++++++
- gcc/testsuite/g++.dg/cpp2a/desig23.C | 20 ++++++++++++
- gcc/testsuite/g++.dg/cpp2a/desig24.C | 11 +++++++
- gcc/testsuite/g++.dg/cpp2a/desig25.C | 13 ++++++++
- gcc/testsuite/g++.dg/ext/flexary3.C | 2 +-
- gcc/testsuite/g++.dg/parse/pr43765.C | 6 ++--
- 7 files changed, 101 insertions(+), 9 deletions(-)
- create mode 100644 gcc/testsuite/g++.dg/cpp2a/desig22.C
- create mode 100644 gcc/testsuite/g++.dg/cpp2a/desig23.C
- create mode 100644 gcc/testsuite/g++.dg/cpp2a/desig24.C
- create mode 100644 gcc/testsuite/g++.dg/cpp2a/desig25.C
-
-diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c
-index 6d3e764fb14..1ba648be1cc 100644
---- a/gcc/cp/decl.c
-+++ b/gcc/cp/decl.c
-@@ -6409,8 +6409,9 @@ reshape_init_class (tree type, reshape_iter *d, bool first_initializer_p,
- {
- tree field_init;
- constructor_elt *old_cur = d->cur;
-+ bool direct_desig = false;
-
-- /* Handle designated initializers, as an extension. */
-+ /* Handle C++20 designated initializers. */
- if (d->cur->index)
- {
- if (d->cur->index == error_mark_node)
-@@ -6428,7 +6429,10 @@ reshape_init_class (tree type, reshape_iter *d, bool first_initializer_p,
- }
- }
- else if (TREE_CODE (d->cur->index) == IDENTIFIER_NODE)
-- field = get_class_binding (type, d->cur->index);
-+ {
-+ field = get_class_binding (type, d->cur->index);
-+ direct_desig = true;
-+ }
- else
- {
- if (complain & tf_error)
-@@ -6474,6 +6478,7 @@ reshape_init_class (tree type, reshape_iter *d, bool first_initializer_p,
- break;
- gcc_assert (aafield);
- field = aafield;
-+ direct_desig = false;
- }
- }
-
-@@ -6488,9 +6493,32 @@ reshape_init_class (tree type, reshape_iter *d, bool first_initializer_p,
- assumed to correspond to no elements of the initializer list. */
- goto continue_;
-
-- field_init = reshape_init_r (TREE_TYPE (field), d,
-- /*first_initializer_p=*/NULL_TREE,
-- complain);
-+ if (direct_desig)
-+ {
-+ /* The designated field F is initialized from this one element:
-+ Temporarily clear the designator so a recursive reshape_init_class
-+ doesn't try to find it again in F, and adjust d->end so we don't
-+ try to use the next initializer to initialize another member of F.
-+
-+ Note that we don't want these changes if we found the designator
-+ inside an anon aggr above; we leave them alone to implement:
-+
-+ "If the element is an anonymous union member and the initializer
-+ list is a brace-enclosed designated- initializer-list, the element
-+ is initialized by the designated-initializer-list { D }, where D
-+ is the designated- initializer-clause naming a member of the
-+ anonymous union member." */
-+ auto end_ = make_temp_override (d->end, d->cur + 1);
-+ auto idx_ = make_temp_override (d->cur->index, NULL_TREE);
-+ field_init = reshape_init_r (TREE_TYPE (field), d,
-+ /*first_initializer_p=*/NULL_TREE,
-+ complain);
-+ }
-+ else
-+ field_init = reshape_init_r (TREE_TYPE (field), d,
-+ /*first_initializer_p=*/NULL_TREE,
-+ complain);
-+
- if (field_init == error_mark_node)
- return error_mark_node;
-
-@@ -6742,6 +6770,15 @@ reshape_init_r (tree type, reshape_iter *d, tree first_initializer_p,
- to handle initialization of arrays and similar. */
- else if (COMPOUND_LITERAL_P (stripped_init))
- gcc_assert (!BRACE_ENCLOSED_INITIALIZER_P (stripped_init));
-+ /* If we have an unresolved designator, we need to find the member it
-+ designates within TYPE, so proceed to the routines below. For
-+ FIELD_DECL or INTEGER_CST designators, we're already initializing
-+ the designated element. */
-+ else if (d->cur->index
-+ && TREE_CODE (d->cur->index) == IDENTIFIER_NODE)
-+ /* Brace elision with designators is only permitted for anonymous
-+ aggregates. */
-+ gcc_checking_assert (ANON_AGGR_TYPE_P (type));
- /* A CONSTRUCTOR of the target's type is a previously
- digested initializer. */
- else if (same_type_ignoring_top_level_qualifiers_p (type, init_type))
-diff --git a/gcc/testsuite/g++.dg/cpp2a/desig22.C b/gcc/testsuite/g++.dg/cpp2a/desig22.C
-new file mode 100644
-index 00000000000..ba083f8e3d5
---- /dev/null
-+++ b/gcc/testsuite/g++.dg/cpp2a/desig22.C
-@@ -0,0 +1,11 @@
-+// PR c++/103337
-+// { dg-do compile { target c++20 } }
-+
-+struct op_t {
-+ struct put_t {
-+ int x;
-+ } put;
-+};
-+
-+op_t x{0}; // OK
-+op_t y{.put=0}; // bogus error: 'op_t::put_t' has no non-static data member named 'put'
-diff --git a/gcc/testsuite/g++.dg/cpp2a/desig23.C b/gcc/testsuite/g++.dg/cpp2a/desig23.C
-new file mode 100644
-index 00000000000..4354e644f6a
---- /dev/null
-+++ b/gcc/testsuite/g++.dg/cpp2a/desig23.C
-@@ -0,0 +1,20 @@
-+// PR c++/102740
-+// { dg-do compile { target c++20 } }
-+// { dg-additional-options -Wmissing-braces }
-+
-+typedef struct {
-+ union {
-+ struct {
-+ const void* content;
-+ } put;
-+ };
-+} op_t;
-+
-+op_t f(const char* alias) {
-+ return op_t{
-+ .put =
-+ {
-+ .content = alias,
-+ },
-+ }; // { dg-warning "missing braces" }
-+}
-diff --git a/gcc/testsuite/g++.dg/cpp2a/desig24.C b/gcc/testsuite/g++.dg/cpp2a/desig24.C
-new file mode 100644
-index 00000000000..219cc9c3b8e
---- /dev/null
-+++ b/gcc/testsuite/g++.dg/cpp2a/desig24.C
-@@ -0,0 +1,11 @@
-+// PR c++/103299
-+// { dg-do compile { target c++20 } }
-+
-+struct foo {
-+ union {
-+ int fp1{};
-+ char fp2;
-+ };
-+};
-+
-+static_assert(foo{.fp2={}}.fp2 == 0);
-diff --git a/gcc/testsuite/g++.dg/cpp2a/desig25.C b/gcc/testsuite/g++.dg/cpp2a/desig25.C
-new file mode 100644
-index 00000000000..9da958c29e9
---- /dev/null
-+++ b/gcc/testsuite/g++.dg/cpp2a/desig25.C
-@@ -0,0 +1,13 @@
-+// PR c++/102538
-+// { dg-do run { target c++20 } }
-+
-+struct X { union { char r8[8]; int r32[2]; }; };
-+struct Y { X v[1]; };
-+Y x = { { { .r32 = { 5, 6 } } } };
-+
-+int
-+main ()
-+{
-+ if (x.v[0].r32[0] != 5 || x.v[0].r32[1] != 6)
-+ __builtin_abort ();
-+}
-diff --git a/gcc/testsuite/g++.dg/ext/flexary3.C b/gcc/testsuite/g++.dg/ext/flexary3.C
-index 34b17254f8c..8344b42dd16 100644
---- a/gcc/testsuite/g++.dg/ext/flexary3.C
-+++ b/gcc/testsuite/g++.dg/ext/flexary3.C
-@@ -16,7 +16,7 @@ struct s {
-
- int main()
- {
-- struct s s = { .c = 0 }; // { dg-error "initializer" }
-+ struct s s = { .c = 0 };
- // { dg-error "non-static initialization of a flexible array member" "" { target *-*-* } .-1 }
- return 0;
- }
-diff --git a/gcc/testsuite/g++.dg/parse/pr43765.C b/gcc/testsuite/g++.dg/parse/pr43765.C
-index 5e602204007..aa099a4d20b 100644
---- a/gcc/testsuite/g++.dg/parse/pr43765.C
-+++ b/gcc/testsuite/g++.dg/parse/pr43765.C
-@@ -12,6 +12,6 @@ SomeType vals[] =
- {
- { 0, values : temp, }, // { dg-error "either all initializer clauses should be designated or none of them should be" "" { target c++2a } }
- 0
-- }; // { dg-error "GNU-style designated initializer for an array|cannot convert" }
--// (note the error above is on the wrong line)
-- // { dg-error "initialization of flexible array member in a nested context" "" { target *-*-* } .-2 }
-+ };
-+// (note the error below is on the wrong line)
-+// { dg-error "initialization of flexible array member in a nested context" "" { target *-*-* } .-2 }
---
-2.31.1
-
diff --git a/packages/gcc/11.2.0/chksum b/packages/gcc/11.2.0/chksum
deleted file mode 100644
index 36a02f83..00000000
--- a/packages/gcc/11.2.0/chksum
+++ /dev/null
@@ -1,8 +0,0 @@
-md5 gcc-11.2.0.tar.xz 31c86f2ced76acac66992eeedce2fce2
-sha1 gcc-11.2.0.tar.xz f902ccacecf8949978d6261e9f1d034cff73ffdb
-sha256 gcc-11.2.0.tar.xz d08edc536b54c372a1010ff6619dd274c0f1603aa49212ba20f7aa2cda36fa8b
-sha512 gcc-11.2.0.tar.xz d53a0a966230895c54f01aea38696f818817b505f1e2bfa65e508753fcd01b2aedb4a61434f41f3a2ddbbd9f41384b96153c684ded3f0fa97c82758d9de5c7cf
-md5 gcc-11.2.0.tar.gz dc6886bd44bb49e2d3d662aed9729278
-sha1 gcc-11.2.0.tar.gz 4d631f343fc3bca2097dbb115f3cb42309a09e22
-sha256 gcc-11.2.0.tar.gz f0837f1bf8244a5cc23bd96ff6366712a791cfae01df8e25b137698aca26efc1
-sha512 gcc-11.2.0.tar.gz 78318318bc2f19dfa9e0e23ffd132758b11785422761eeb7f5c2988cdd0560860d4580142496faa211ba80414bae9b7f3bc55ea968bdd5c1f713d4c5266e2fa3
diff --git a/packages/gcc/11.2.0/0000-libtool-leave-framework-alone.patch b/packages/gcc/11.3.0/0000-libtool-leave-framework-alone.patch
index 1a86e415..1a86e415 100644
--- a/packages/gcc/11.2.0/0000-libtool-leave-framework-alone.patch
+++ b/packages/gcc/11.3.0/0000-libtool-leave-framework-alone.patch
diff --git a/packages/gcc/11.2.0/0001-gcc-plugin-POSIX-include-sys-select-h.patch b/packages/gcc/11.3.0/0001-gcc-plugin-POSIX-include-sys-select-h.patch
index 5f9a07a2..5f9a07a2 100644
--- a/packages/gcc/11.2.0/0001-gcc-plugin-POSIX-include-sys-select-h.patch
+++ b/packages/gcc/11.3.0/0001-gcc-plugin-POSIX-include-sys-select-h.patch
diff --git a/packages/gcc/11.2.0/0002-arm-softfloat-libgcc.patch b/packages/gcc/11.3.0/0002-arm-softfloat-libgcc.patch
index d9800365..d9800365 100644
--- a/packages/gcc/11.2.0/0002-arm-softfloat-libgcc.patch
+++ b/packages/gcc/11.3.0/0002-arm-softfloat-libgcc.patch
diff --git a/packages/gcc/11.2.0/0003-libgcc-disable-split-stack-nothreads.patch b/packages/gcc/11.3.0/0003-libgcc-disable-split-stack-nothreads.patch
index df91a9ff..df91a9ff 100644
--- a/packages/gcc/11.2.0/0003-libgcc-disable-split-stack-nothreads.patch
+++ b/packages/gcc/11.3.0/0003-libgcc-disable-split-stack-nothreads.patch
diff --git a/packages/gcc/11.2.0/0004-Remove-use-of-include_next-from-c-headers.patch b/packages/gcc/11.3.0/0004-Remove-use-of-include_next-from-c-headers.patch
index 920e64da..920e64da 100644
--- a/packages/gcc/11.2.0/0004-Remove-use-of-include_next-from-c-headers.patch
+++ b/packages/gcc/11.3.0/0004-Remove-use-of-include_next-from-c-headers.patch
diff --git a/packages/gcc/11.2.0/0006-arc-Update-ZOL-pattern.patch b/packages/gcc/11.3.0/0005-arc-Update-ZOL-pattern.patch
index 361c9dbe..361c9dbe 100644
--- a/packages/gcc/11.2.0/0006-arc-Update-ZOL-pattern.patch
+++ b/packages/gcc/11.3.0/0005-arc-Update-ZOL-pattern.patch
diff --git a/packages/gcc/11.2.0/0007-arc-Update-u-maddhisi4-patterns.patch b/packages/gcc/11.3.0/0006-arc-Update-u-maddhisi4-patterns.patch
index 8b0c34f7..8b0c34f7 100644
--- a/packages/gcc/11.2.0/0007-arc-Update-u-maddhisi4-patterns.patch
+++ b/packages/gcc/11.3.0/0006-arc-Update-u-maddhisi4-patterns.patch
diff --git a/packages/gcc/11.2.0/0008-arc-Fix-maddhisi-patterns.patch b/packages/gcc/11.3.0/0007-arc-Fix-maddhisi-patterns.patch
index e4233a36..e4233a36 100644
--- a/packages/gcc/11.2.0/0008-arc-Fix-maddhisi-patterns.patch
+++ b/packages/gcc/11.3.0/0007-arc-Fix-maddhisi-patterns.patch
diff --git a/packages/gcc/11.2.0/0009-Darwin-aarch64-Initial-support-for-the-self-host-dri.patch b/packages/gcc/11.3.0/0008-Darwin-aarch64-Initial-support-for-the-self-host-dri.patch
index ab73edba..ab73edba 100644
--- a/packages/gcc/11.2.0/0009-Darwin-aarch64-Initial-support-for-the-self-host-dri.patch
+++ b/packages/gcc/11.3.0/0008-Darwin-aarch64-Initial-support-for-the-self-host-dri.patch
diff --git a/packages/gcc/11.2.0/0010-libstdc-Check-for-TLS-support-on-mingw-cross-compile.patch b/packages/gcc/11.3.0/0009-libstdc-Check-for-TLS-support-on-mingw-cross-compile.patch
index a4b4ec25..feece2d1 100644
--- a/packages/gcc/11.2.0/0010-libstdc-Check-for-TLS-support-on-mingw-cross-compile.patch
+++ b/packages/gcc/11.3.0/0009-libstdc-Check-for-TLS-support-on-mingw-cross-compile.patch
@@ -11,15 +11,13 @@ libstdc++-v3/ChangeLog:
* crossconfig.m4: Check for TLS support on mingw.
* configure: Regenerate.
---
- libstdc++-v3/configure | 208 ++++++++++++++++++++++++++++++++++++
- libstdc++-v3/crossconfig.m4 | 1 +
+ libstdc++-v3/configure | 208 ++++++++++++++++++++++++++++++++++++++++++++
+ libstdc++-v3/crossconfig.m4 | 1
2 files changed, 209 insertions(+)
-diff --git a/libstdc++-v3/configure b/libstdc++-v3/configure
-index 13d52eb0c0e..c1aea827070 100755
--- a/libstdc++-v3/configure
+++ b/libstdc++-v3/configure
-@@ -60242,6 +60242,214 @@ _ACEOF
+@@ -60379,6 +60379,214 @@
fi
done
@@ -234,11 +232,9 @@ index 13d52eb0c0e..c1aea827070 100755
;;
*-netbsd* | *-openbsd*)
SECTION_FLAGS='-ffunction-sections -fdata-sections'
-diff --git a/libstdc++-v3/crossconfig.m4 b/libstdc++-v3/crossconfig.m4
-index ff44d5ae019..ae5283b7ad3 100644
--- a/libstdc++-v3/crossconfig.m4
+++ b/libstdc++-v3/crossconfig.m4
-@@ -204,6 +204,7 @@ case "${host}" in
+@@ -204,6 +204,7 @@
GLIBCXX_CHECK_STDLIB_SUPPORT
AC_CHECK_FUNCS(aligned_alloc posix_memalign memalign _aligned_malloc)
AC_CHECK_FUNCS(_wfopen)
@@ -246,6 +242,3 @@ index ff44d5ae019..ae5283b7ad3 100644
;;
*-netbsd* | *-openbsd*)
SECTION_FLAGS='-ffunction-sections -fdata-sections'
---
-2.33.0.windows.2
-
diff --git a/packages/gcc/11.3.0/chksum b/packages/gcc/11.3.0/chksum
new file mode 100644
index 00000000..e5e8d647
--- /dev/null
+++ b/packages/gcc/11.3.0/chksum
@@ -0,0 +1,8 @@
+md5 gcc-11.3.0.tar.xz 4ee3e8c4c99e7b3444eb79f00f5f7a7e
+sha1 gcc-11.3.0.tar.xz cf86a48278f9a6f4b03d4390550577b20353b4e9
+sha256 gcc-11.3.0.tar.xz b47cf2818691f5b1e21df2bb38c795fac2cfbd640ede2d0a5e1c89e338a3ac39
+sha512 gcc-11.3.0.tar.xz f0be5ad705c73b84477128a69c047f57dd47002f375eb60e1e842e08cf2009a509e92152bca345823926d550b7395ae6d4de7db51d1ee371c2dc37313881fca7
+md5 gcc-11.3.0.tar.gz b29cf744540c87262fb82e550aa24b11
+sha1 gcc-11.3.0.tar.gz 5bc5f1582f7ad1024b50a31e1d28865d330f18b9
+sha256 gcc-11.3.0.tar.gz 98438e6cc7294298b474cf0da7655d9a8c8b796421bb0210531c294a950374ed
+sha512 gcc-11.3.0.tar.gz 8f84f4d0639ffeb81f57f0e2c81acdab6f1045217bc7b333e6638581abd442bf2a524480208b3a439a5880a661144dbbd1aa14c6b70c6a8388111be493163156
diff --git a/packages/gcc/11.2.0/version.desc b/packages/gcc/11.3.0/version.desc
index e69de29b..e69de29b 100644
--- a/packages/gcc/11.2.0/version.desc
+++ b/packages/gcc/11.3.0/version.desc