summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2016-06-24 08:53:09 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2016-07-01 16:22:44 +0100
commit1bf0944925dc0bb53b12b0f6623be0401e236e53 (patch)
tree77a614bca62066e300df6c307251d43dcd20c3ac
parent0412b6d90d9eaa424cd0e6b7f205ba7f6622625c (diff)
downloadpoky-1bf0944925dc0bb53b12b0f6623be0401e236e53.tar.gz
gcc5: Upgrade to gcc 5.4
Drop patches which has been applied to gcc5 branch until 5.4 release (From OE-Core rev: 42487843f846ae61f8bd1b2278d148ff37f0d667) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.3/0060-remove-prototypes-cfns.patch153
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.3/0061-nios2-Make-assert-less-restrictive.patch35
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.3/CVE-2016-2226.patch103
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.3/CVE-2016-4488.patch73
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.3/CVE-2016-4489.patch56
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.3/CVE-2016-4490.patch270
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4.inc (renamed from meta/recipes-devtools/gcc/gcc-5.3.inc)17
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0002-uclibc-conf.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0002-uclibc-conf.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0003-gcc-uclibc-locale-ctype_touplow_t.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0003-gcc-uclibc-locale-ctype_touplow_t.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0004-uclibc-locale.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0004-uclibc-locale.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0005-uclibc-locale-no__x.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0005-uclibc-locale-no__x.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0006-uclibc-locale-wchar_fix.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0006-uclibc-locale-wchar_fix.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0007-uclibc-locale-update.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0007-uclibc-locale-update.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0008-missing-execinfo_h.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0008-missing-execinfo_h.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0009-c99-snprintf.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0009-c99-snprintf.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0010-gcc-poison-system-directories.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0010-gcc-poison-system-directories.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0011-gcc-poison-dir-extend.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0011-gcc-poison-dir-extend.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0012-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0012-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0013-64-bit-multilib-hack.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0013-64-bit-multilib-hack.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0014-optional-libstdc.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0014-optional-libstdc.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0015-gcc-disable-MASK_RELAX_PIC_CALLS-bit.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0015-gcc-disable-MASK_RELAX_PIC_CALLS-bit.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0016-COLLECT_GCC_OPTIONS.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0016-COLLECT_GCC_OPTIONS.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0017-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0017-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0018-fortran-cross-compile-hack.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0018-fortran-cross-compile-hack.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0019-libgcc-sjlj-check.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0019-libgcc-sjlj-check.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0020-cpp-honor-sysroot.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0020-cpp-honor-sysroot.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0021-MIPS64-Default-to-N64-ABI.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0021-MIPS64-Default-to-N64-ABI.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0022-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0022-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0023-gcc-Fix-argument-list-too-long-error.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0023-gcc-Fix-argument-list-too-long-error.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0024-Disable-sdt.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0024-Disable-sdt.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0025-libtool.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0025-libtool.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0026-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0026-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0027-Use-the-multilib-config-files-from-B-instead-of-usin.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0027-Use-the-multilib-config-files-from-B-instead-of-usin.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0028-Avoid-using-libdir-from-.la-which-usually-points-to-.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0028-Avoid-using-libdir-from-.la-which-usually-points-to-.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0029-export-CPP.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0029-export-CPP.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0030-Enable-SPE-AltiVec-generation-on-powepc-linux-target.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0030-Enable-SPE-AltiVec-generation-on-powepc-linux-target.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0031-Disable-the-MULTILIB_OSDIRNAMES-and-other-multilib-o.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0031-Disable-the-MULTILIB_OSDIRNAMES-and-other-multilib-o.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0032-Ensure-target-gcc-headers-can-be-included.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0032-Ensure-target-gcc-headers-can-be-included.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0033-gcc-4.8-won-t-build-with-disable-dependency-tracking.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0033-gcc-4.8-won-t-build-with-disable-dependency-tracking.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0034-Don-t-search-host-directory-during-relink-if-inst_pr.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0034-Don-t-search-host-directory-during-relink-if-inst_pr.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0035-Dont-link-the-plugins-with-libgomp-explicitly.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0035-Dont-link-the-plugins-with-libgomp-explicitly.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0036-Use-SYSTEMLIBS_DIR-replacement-instead-of-hardcoding.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0036-Use-SYSTEMLIBS_DIR-replacement-instead-of-hardcoding.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0037-aarch64-Add-support-for-musl-ldso.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0037-aarch64-Add-support-for-musl-ldso.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0038-fix-g-sysroot.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0038-fix-g-sysroot.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0039-libcc1-fix-libcc1-s-install-path-and-rpath.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0039-libcc1-fix-libcc1-s-install-path-and-rpath.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0040-handle-sysroot-support-for-nativesdk-gcc.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0040-handle-sysroot-support-for-nativesdk-gcc.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0041-Search-target-sysroot-gcc-version-specific-dirs-with.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0041-Search-target-sysroot-gcc-version-specific-dirs-with.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0042-Fix-various-_FOR_BUILD-and-related-variables.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0042-Fix-various-_FOR_BUILD-and-related-variables.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0043-libstdc-Support-musl.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0043-libstdc-Support-musl.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0044-Adding-mmusl-as-a-musl-libc-specifier-and-the-necess.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0044-Adding-mmusl-as-a-musl-libc-specifier-and-the-necess.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0045-Support-for-arm-linux-musl.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0045-Support-for-arm-linux-musl.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0046-Get-rid-of-ever-broken-fixincludes-on-musl.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0046-Get-rid-of-ever-broken-fixincludes-on-musl.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0047-nios2-Define-MUSL_DYNAMIC_LINKER.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0047-nios2-Define-MUSL_DYNAMIC_LINKER.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0048-ssp_nonshared.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0048-ssp_nonshared.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0049-Disable-the-weak-reference-logic-in-gthr.h-for-os-ge.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0049-Disable-the-weak-reference-logic-in-gthr.h-for-os-ge.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0050-powerpc-pass-secure-plt-to-the-linker.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0050-powerpc-pass-secure-plt-to-the-linker.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0051-Ignore-fdebug-prefix-map-in-producer-string-by-Danie.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0051-Ignore-fdebug-prefix-map-in-producer-string-by-Danie.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0052-nios2-use-ret-with-r31.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0052-nios2-use-ret-with-r31.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0053-expr.c-PR-target-65358-Avoid-clobbering-partial-argu.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0053-expr.c-PR-target-65358-Avoid-clobbering-partial-argu.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0054-support-ffile-prefix-map.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0054-support-ffile-prefix-map.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0055-Reuse-fdebug-prefix-map-to-replace-ffile-prefix-map.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0055-Reuse-fdebug-prefix-map-to-replace-ffile-prefix-map.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0056-Enable-libc-provide-ssp-and-gcc_cv_target_dl_iterate.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0056-Enable-libc-provide-ssp-and-gcc_cv_target_dl_iterate.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0057-unwind-fix-for-musl.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0057-unwind-fix-for-musl.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0058-fdebug-prefix-map-support-to-remap-relative-path.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0058-fdebug-prefix-map-support-to-remap-relative-path.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-5.4/0059-libgcc-use-ldflags.patch (renamed from meta/recipes-devtools/gcc/gcc-5.3/0059-libgcc-use-ldflags.patch)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-cross-canadian_5.4.bb (renamed from meta/recipes-devtools/gcc/gcc-cross-canadian_5.3.bb)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-cross-initial_5.4.bb (renamed from meta/recipes-devtools/gcc/gcc-cross-initial_5.3.bb)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-cross_5.4.bb (renamed from meta/recipes-devtools/gcc/gcc-cross_5.3.bb)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-crosssdk-initial_5.4.bb (renamed from meta/recipes-devtools/gcc/gcc-crosssdk-initial_5.3.bb)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-crosssdk_5.4.bb (renamed from meta/recipes-devtools/gcc/gcc-crosssdk_5.3.bb)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-runtime_5.4.bb (renamed from meta/recipes-devtools/gcc/gcc-runtime_5.3.bb)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-sanitizers_5.4.bb (renamed from meta/recipes-devtools/gcc/gcc-sanitizers_5.3.bb)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-source_5.4.bb (renamed from meta/recipes-devtools/gcc/gcc-source_5.3.bb)0
-rw-r--r--meta/recipes-devtools/gcc/gcc_5.4.bb (renamed from meta/recipes-devtools/gcc/gcc_5.3.bb)0
-rw-r--r--meta/recipes-devtools/gcc/libgcc-initial_5.4.bb (renamed from meta/recipes-devtools/gcc/libgcc-initial_5.3.bb)0
-rw-r--r--meta/recipes-devtools/gcc/libgcc_5.4.bb (renamed from meta/recipes-devtools/gcc/libgcc_5.3.bb)0
-rw-r--r--meta/recipes-devtools/gcc/libgfortran_5.4.bb (renamed from meta/recipes-devtools/gcc/libgfortran_5.3.bb)0
78 files changed, 6 insertions, 701 deletions
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0060-remove-prototypes-cfns.patch b/meta/recipes-devtools/gcc/gcc-5.3/0060-remove-prototypes-cfns.patch
deleted file mode 100644
index 2452b6f5c8..0000000000
--- a/meta/recipes-devtools/gcc/gcc-5.3/0060-remove-prototypes-cfns.patch
+++ /dev/null
@@ -1,153 +0,0 @@
1Upstream-Status: backport
2
3From 1e5f1089dec3af328fd03125d6778f666d0bd4e4 Mon Sep 17 00:00:00 2001
4From: edlinger <edlinger@138bc75d-0d04-0410-961f-82ee72b054a4>
5Date: Thu, 25 Feb 2016 15:33:50 +0000
6Subject: [PATCH] 2016-02-25 Bernd Edlinger <bernd.edlinger@hotmail.de>
7
8 Backported from mainline
9 2016-02-19 Jakub Jelinek <jakub@redhat.com>
10 Bernd Edlinger <bernd.edlinger@hotmail.de>
11
12 * Make-lang.in: Invoke gperf with -L C++.
13 * cfns.gperf: Remove prototypes for hash and libc_name_p
14 inlines.
15 * cfns.h: Regenerated.
16 * except.c (nothrow_libfn_p): Adjust.
17
18
19---
20 gcc/cp/Make-lang.in | 2 +-
21 gcc/cp/cfns.gperf | 10 ++--------
22 gcc/cp/cfns.h | 41 ++++++++++++++---------------------------
23 gcc/cp/except.c | 3 ++-
24 5 files changed, 31 insertions(+), 37 deletions(-)
25
26diff --git a/gcc/cp/Make-lang.in b/gcc/cp/Make-lang.in
27index e98beb1..b09fb02 100644
28--- a/gcc/cp/Make-lang.in
29+++ b/gcc/cp/Make-lang.in
30@@ -111,7 +111,7 @@ else
31 # deleting the $(srcdir)/cp/cfns.h file.
32 $(srcdir)/cp/cfns.h:
33 endif
34- gperf -o -C -E -k '1-6,$$' -j1 -D -N 'libc_name_p' -L ANSI-C \
35+ gperf -o -C -E -k '1-6,$$' -j1 -D -N 'libc_name_p' -L C++ \
36 $(srcdir)/cp/cfns.gperf --output-file $(srcdir)/cp/cfns.h
37
38 #
39diff --git a/gcc/cp/cfns.gperf b/gcc/cp/cfns.gperf
40index 68acd3d..214ecf6 100644
41--- a/gcc/cp/cfns.gperf
42+++ b/gcc/cp/cfns.gperf
43@@ -1,3 +1,5 @@
44+%language=C++
45+%define class-name libc_name
46 %{
47 /* Copyright (C) 2000-2015 Free Software Foundation, Inc.
48
49@@ -16,14 +18,6 @@ for more details.
50 You should have received a copy of the GNU General Public License
51 along with GCC; see the file COPYING3. If not see
52 <http://www.gnu.org/licenses/>. */
53-#ifdef __GNUC__
54-__inline
55-#endif
56-static unsigned int hash (const char *, unsigned int);
57-#ifdef __GNUC__
58-__inline
59-#endif
60-const char * libc_name_p (const char *, unsigned int);
61 %}
62 %%
63 # The standard C library functions, for feeding to gperf; the result is used
64diff --git a/gcc/cp/cfns.h b/gcc/cp/cfns.h
65index 1c6665d..596f413 100644
66--- a/gcc/cp/cfns.h
67+++ b/gcc/cp/cfns.h
68@@ -1,5 +1,5 @@
69-/* ANSI-C code produced by gperf version 3.0.3 */
70-/* Command-line: gperf -o -C -E -k '1-6,$' -j1 -D -N libc_name_p -L ANSI-C cfns.gperf */
71+/* C++ code produced by gperf version 3.0.4 */
72+/* Command-line: gperf -o -C -E -k '1-6,$' -j1 -D -N libc_name_p -L C++ --output-file cfns.h cfns.gperf */
73
74 #if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \
75 && ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \
76@@ -28,7 +28,7 @@
77 #error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gnu-gperf@gnu.org>."
78 #endif
79
80-#line 1 "cfns.gperf"
81+#line 3 "cfns.gperf"
82
83 /* Copyright (C) 2000-2015 Free Software Foundation, Inc.
84
85@@ -47,25 +47,18 @@ for more details.
86 You should have received a copy of the GNU General Public License
87 along with GCC; see the file COPYING3. If not see
88 <http://www.gnu.org/licenses/>. */
89-#ifdef __GNUC__
90-__inline
91-#endif
92-static unsigned int hash (const char *, unsigned int);
93-#ifdef __GNUC__
94-__inline
95-#endif
96-const char * libc_name_p (const char *, unsigned int);
97 /* maximum key range = 391, duplicates = 0 */
98
99-#ifdef __GNUC__
100-__inline
101-#else
102-#ifdef __cplusplus
103-inline
104-#endif
105-#endif
106-static unsigned int
107-hash (register const char *str, register unsigned int len)
108+class libc_name
109+{
110+private:
111+ static inline unsigned int hash (const char *str, unsigned int len);
112+public:
113+ static const char *libc_name_p (const char *str, unsigned int len);
114+};
115+
116+inline unsigned int
117+libc_name::hash (register const char *str, register unsigned int len)
118 {
119 static const unsigned short asso_values[] =
120 {
121@@ -122,14 +115,8 @@ hash (register const char *str, register unsigned int len)
122 return hval + asso_values[(unsigned char)str[len - 1]];
123 }
124
125-#ifdef __GNUC__
126-__inline
127-#ifdef __GNUC_STDC_INLINE__
128-__attribute__ ((__gnu_inline__))
129-#endif
130-#endif
131 const char *
132-libc_name_p (register const char *str, register unsigned int len)
133+libc_name::libc_name_p (register const char *str, register unsigned int len)
134 {
135 enum
136 {
137diff --git a/gcc/cp/except.c b/gcc/cp/except.c
138index 3ff1ce6..2f2e396 100644
139--- a/gcc/cp/except.c
140+++ b/gcc/cp/except.c
141@@ -1040,7 +1040,8 @@ nothrow_libfn_p (const_tree fn)
142 unless the system headers are playing rename tricks, and if
143 they are, we don't want to be confused by them. */
144 id = DECL_NAME (fn);
145- return !!libc_name_p (IDENTIFIER_POINTER (id), IDENTIFIER_LENGTH (id));
146+ return !!libc_name::libc_name_p (IDENTIFIER_POINTER (id),
147+ IDENTIFIER_LENGTH (id));
148 }
149
150 /* Returns nonzero if an exception of type FROM will be caught by a
151--
1522.8.2
153
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0061-nios2-Make-assert-less-restrictive.patch b/meta/recipes-devtools/gcc/gcc-5.3/0061-nios2-Make-assert-less-restrictive.patch
deleted file mode 100644
index 6a20694e44..0000000000
--- a/meta/recipes-devtools/gcc/gcc-5.3/0061-nios2-Make-assert-less-restrictive.patch
+++ /dev/null
@@ -1,35 +0,0 @@
1From 802c64857074cb7b002d91ce6352139c2353ca06 Mon Sep 17 00:00:00 2001
2From: cltang <cltang@138bc75d-0d04-0410-961f-82ee72b054a4>
3Date: Sat, 21 May 2016 08:26:11 +0000
4Subject: [PATCH] 2016-05-21 Chung-Lin Tang <cltang@codesourcery.com>
5
6 Backport from mainline
7 2015-06-29 Sandra Loosemore <sandra@codesourcery.com>
8
9 * config/nios2/nios2.c (nios2_delegitimize_address): Make
10 assert less restrictive.
11
12
13
14git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@236555 138bc75d-0d04-0410-961f-82ee72b054a4
15Upstream-Status: Backport (git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@236555 138bc75d-0d04-0410-961f-82ee72b054a4)
16---
17 gcc/config/nios2/nios2.c | 2 +-
18 1 files changed, 1 insertions(+), 1 deletion(-)
19
20diff --git a/gcc/config/nios2/nios2.c b/gcc/config/nios2/nios2.c
21index 7b6b389..3b22331 100644
22--- a/gcc/config/nios2/nios2.c
23+++ b/gcc/config/nios2/nios2.c
24@@ -1930,7 +1930,7 @@ nios2_delegitimize_address (rtx x)
25 case UNSPEC_LOAD_TLS_IE:
26 case UNSPEC_ADD_TLS_LE:
27 x = XVECEXP (XEXP (x, 0), 0, 0);
28- gcc_assert (GET_CODE (x) == SYMBOL_REF);
29+ gcc_assert (CONSTANT_P (x));
30 break;
31 }
32 }
33--
342.8.1
35
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/CVE-2016-2226.patch b/meta/recipes-devtools/gcc/gcc-5.3/CVE-2016-2226.patch
deleted file mode 100644
index 4decb84cdd..0000000000
--- a/meta/recipes-devtools/gcc/gcc-5.3/CVE-2016-2226.patch
+++ /dev/null
@@ -1,103 +0,0 @@
1From b8106f544a7fd485b6959ebd197bdd99a8884416 Mon Sep 17 00:00:00 2001
2From: bernds <bernds@138bc75d-0d04-0410-961f-82ee72b054a4>
3Date: Fri, 8 Apr 2016 12:10:21 +0000
4Subject: [PATCH] =?UTF-8?q?Fix=20memory=20allocation=20size=20overflows=20?=
5 =?UTF-8?q?(PR69687,=20patch=20by=20Marcel=20B=C3=B6hme)?=
6MIME-Version: 1.0
7Content-Type: text/plain; charset=UTF-8
8Content-Transfer-Encoding: 8bit
9
10 PR c++/69687
11 * cplus-dem.c: Include <limits.h> if available.
12 (INT_MAX): Define if necessary.
13 (remember_type, remember_Ktype, register_Btype, string_need):
14 Abort if we detect cases where we the size of the allocation would
15 overflow.
16
17
18
19git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@234829 138bc75d-0d04-0410-961f-82ee72b054a4
20Upstream-Status: Backport
21CVE: CVE-2016-2226
22
23Signed-off-by: Armin Kuster <akuster@mvista.com>
24
25---
26 libiberty/ChangeLog | 7 +++++++
27 libiberty/cplus-dem.c | 15 +++++++++++++++
28 2 files changed, 22 insertions(+)
29
30diff --git a/libiberty/ChangeLog b/libiberty/ChangeLog
31index 8e82a5f..2a34356 100644
32--- a/libiberty/ChangeLog
33+++ b/libiberty/ChangeLog
34@@ -1,5 +1,12 @@
35 2016-04-08 Marcel Böhme <boehme.marcel@gmail.com>
36
37+ PR c++/69687
38+ * cplus-dem.c: Include <limits.h> if available.
39+ (INT_MAX): Define if necessary.
40+ (remember_type, remember_Ktype, register_Btype, string_need):
41+ Abort if we detect cases where we the size of the allocation would
42+ overflow.
43+
44 PR c++/70498
45 * cplus-dem.c (gnu_special): Handle case where consume_count returns
46 -1.
47diff --git a/libiberty/cplus-dem.c b/libiberty/cplus-dem.c
48index abba234..7514e57 100644
49--- a/libiberty/cplus-dem.c
50+++ b/libiberty/cplus-dem.c
51@@ -56,6 +56,13 @@ void * malloc ();
52 void * realloc ();
53 #endif
54
55+#ifdef HAVE_LIMITS_H
56+#include <limits.h>
57+#endif
58+#ifndef INT_MAX
59+# define INT_MAX (int)(((unsigned int) ~0) >> 1) /* 0x7FFFFFFF */
60+#endif
61+
62 #include <demangle.h>
63 #undef CURRENT_DEMANGLING_STYLE
64 #define CURRENT_DEMANGLING_STYLE work->options
65@@ -4261,6 +4268,8 @@ remember_type (struct work_stuff *work, const char *start, int len)
66 }
67 else
68 {
69+ if (work -> typevec_size > INT_MAX / 2)
70+ xmalloc_failed (INT_MAX);
71 work -> typevec_size *= 2;
72 work -> typevec
73 = XRESIZEVEC (char *, work->typevec, work->typevec_size);
74@@ -4288,6 +4297,8 @@ remember_Ktype (struct work_stuff *work, const char *start, int len)
75 }
76 else
77 {
78+ if (work -> ksize > INT_MAX / 2)
79+ xmalloc_failed (INT_MAX);
80 work -> ksize *= 2;
81 work -> ktypevec
82 = XRESIZEVEC (char *, work->ktypevec, work->ksize);
83@@ -4317,6 +4328,8 @@ register_Btype (struct work_stuff *work)
84 }
85 else
86 {
87+ if (work -> bsize > INT_MAX / 2)
88+ xmalloc_failed (INT_MAX);
89 work -> bsize *= 2;
90 work -> btypevec
91 = XRESIZEVEC (char *, work->btypevec, work->bsize);
92@@ -4771,6 +4784,8 @@ string_need (string *s, int n)
93 else if (s->e - s->p < n)
94 {
95 tem = s->p - s->b;
96+ if (n > INT_MAX / 2 - tem)
97+ xmalloc_failed (INT_MAX);
98 n += tem;
99 n *= 2;
100 s->b = XRESIZEVEC (char, s->b, n);
101--
1022.3.5
103
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/CVE-2016-4488.patch b/meta/recipes-devtools/gcc/gcc-5.3/CVE-2016-4488.patch
deleted file mode 100644
index 30e0ffeace..0000000000
--- a/meta/recipes-devtools/gcc/gcc-5.3/CVE-2016-4488.patch
+++ /dev/null
@@ -1,73 +0,0 @@
1From be3004dc350a820a5b0320b34bd05673ba534058 Mon Sep 17 00:00:00 2001
2From: law <law@138bc75d-0d04-0410-961f-82ee72b054a4>
3Date: Thu, 31 Mar 2016 17:20:53 +0000
4Subject: [PATCH] * cplus-dem.c (squangle_mop_up): Zero bsize/ksize
5 after freeing btypevec/ktypevec. * testsuite/demangle-expected: Add
6 coverage tests.
7
8git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@234645 138bc75d-0d04-0410-961f-82ee72b054a4
9
10Upstream-Status: Backport
11CVE: CVE-2016-4488
12
13patched ChangeLog and demangle-expected as patch is from tip.
14Signed-off-by: Armin Kuster <akuster@mvista.com>
15
16
17---
18 libiberty/ChangeLog | 7 +++++++
19 libiberty/cplus-dem.c | 2 ++
20 libiberty/testsuite/demangle-expected | 10 ++++++++++
21 3 files changed, 19 insertions(+)
22
23Index: gcc-5.3.0/libiberty/cplus-dem.c
24===================================================================
25--- gcc-5.3.0.orig/libiberty/cplus-dem.c
26+++ gcc-5.3.0/libiberty/cplus-dem.c
27@@ -1237,11 +1237,13 @@ squangle_mop_up (struct work_stuff *work
28 {
29 free ((char *) work -> btypevec);
30 work->btypevec = NULL;
31+ work->bsize = 0;
32 }
33 if (work -> ktypevec != NULL)
34 {
35 free ((char *) work -> ktypevec);
36 work->ktypevec = NULL;
37+ work->ksize = 0;
38 }
39 }
40
41Index: gcc-5.3.0/libiberty/testsuite/demangle-expected
42===================================================================
43--- gcc-5.3.0.orig/libiberty/testsuite/demangle-expected
44+++ gcc-5.3.0/libiberty/testsuite/demangle-expected
45@@ -4356,3 +4356,13 @@ _QueueNotification_QueueController__$4PP
46 --format=gnu-v3
47 _Z1fSsB3fooS_
48 f(std::string[abi:foo], std::string[abi:foo])
49+#
50+# Tests a use-after-free problem
51+
52+_Q.__0
53+::Q.(void)
54+#
55+# Tests a use-after-free problem
56+
57+_Q10-__9cafebabe.
58+cafebabe.::-(void)
59Index: gcc-5.3.0/libiberty/ChangeLog
60===================================================================
61--- gcc-5.3.0.orig/libiberty/ChangeLog
62+++ gcc-5.3.0/libiberty/ChangeLog
63@@ -1,3 +1,10 @@
64+2016-03-31 Mikhail Maltsev <maltsevm@gmail.com>
65+ Marcel Bohme boehme.marcel@gmail.com
66+
67+ * cplus-dem.c (squangle_mop_up): Zero bsize/ksize after freeing
68+ btypevec/ktypevec.
69+ * testsuite/demangle-expected: Add coverage tests.
70+
71 2015-12-04 Release Manager
72
73 * GCC 5.3.0 released.
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/CVE-2016-4489.patch b/meta/recipes-devtools/gcc/gcc-5.3/CVE-2016-4489.patch
deleted file mode 100644
index 68a0f85400..0000000000
--- a/meta/recipes-devtools/gcc/gcc-5.3/CVE-2016-4489.patch
+++ /dev/null
@@ -1,56 +0,0 @@
1From 053ec2207203a194d2ae82e2f164009aad3f14d2 Mon Sep 17 00:00:00 2001
2From: bernds <bernds@138bc75d-0d04-0410-961f-82ee72b054a4>
3Date: Fri, 8 Apr 2016 12:06:59 +0000
4Subject: [PATCH] =?UTF-8?q?Handle=20an=20overflow=20case=20(PR70498,=20pat?=
5 =?UTF-8?q?ch=20by=20Marcel=20B=C3=B6hme).?=
6MIME-Version: 1.0
7Content-Type: text/plain; charset=UTF-8
8Content-Transfer-Encoding: 8bit
9
10 PR c++/70498
11 * cplus-dem.c (gnu_special): Handle case where consume_count returns
12 -1.
13
14
15
16git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@234828 138bc75d-0d04-0410-961f-82ee72b054a4
17
18Upstream-Status: Backport
19CVE: CVE-2016-4489
20
21Signed-off-by: Armin Kuster <akuster@mvista.com>
22---
23 libiberty/ChangeLog | 6 ++++++
24 libiberty/cplus-dem.c | 5 +++++
25 2 files changed, 11 insertions(+)
26
27Index: gcc-5.3.0/libiberty/ChangeLog
28===================================================================
29--- gcc-5.3.0.orig/libiberty/ChangeLog
30+++ gcc-5.3.0/libiberty/ChangeLog
31@@ -1,3 +1,9 @@
32+2016-04-08 Marcel Böhme <boehme.marcel@gmail.com>
33+
34+ PR c++/70498
35+ * cplus-dem.c (gnu_special): Handle case where consume_count returns
36+ -1.
37+
38 2016-03-31 Mikhail Maltsev <maltsevm@gmail.com>
39 Marcel Bohme boehme.marcel@gmail.com
40
41Index: gcc-5.3.0/libiberty/cplus-dem.c
42===================================================================
43--- gcc-5.3.0.orig/libiberty/cplus-dem.c
44+++ gcc-5.3.0/libiberty/cplus-dem.c
45@@ -3001,6 +3001,11 @@ gnu_special (struct work_stuff *work, co
46 success = 1;
47 break;
48 }
49+ else if (n == -1)
50+ {
51+ success = 0;
52+ break;
53+ }
54 }
55 else
56 {
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/CVE-2016-4490.patch b/meta/recipes-devtools/gcc/gcc-5.3/CVE-2016-4490.patch
deleted file mode 100644
index 4a9ed69938..0000000000
--- a/meta/recipes-devtools/gcc/gcc-5.3/CVE-2016-4490.patch
+++ /dev/null
@@ -1,270 +0,0 @@
1From 7d235b1b5ea35352c54957ef5530d9a02c46962f Mon Sep 17 00:00:00 2001
2From: bernds <bernds@138bc75d-0d04-0410-961f-82ee72b054a4>
3Date: Mon, 2 May 2016 17:06:40 +0000
4Subject: [PATCH] =?UTF-8?q?Demangler=20integer=20overflow=20fixes=20from?=
5 =?UTF-8?q?=20Marcel=20B=C3=B6hme.?=
6MIME-Version: 1.0
7Content-Type: text/plain; charset=UTF-8
8Content-Transfer-Encoding: 8bit
9
10 PR c++/70498
11 * cp-demangle.c: Parse numbers as integer instead of long to avoid
12 overflow after sanity checks. Include <limits.h> if available.
13 (INT_MAX): Define if necessary.
14 (d_make_template_param): Takes integer argument instead of long.
15 (d_make_function_param): Likewise.
16 (d_append_num): Likewise.
17 (d_identifier): Likewise.
18 (d_number): Parse as and return integer.
19 (d_compact_number): Handle overflow.
20 (d_source_name): Change variable type to integer for parsed number.
21 (d_java_resource): Likewise.
22 (d_special_name): Likewise.
23 (d_discriminator): Likewise.
24 (d_unnamed_type): Likewise.
25 * testsuite/demangle-expected: Add regression test cases.
26
27
28
29git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@235767 138bc75d-0d04-0410-961f-82ee72b054a4
30
31Upstream-Status: Backport
32
33CVE: CVE-2016-4490
34hand applied ChangeLog
35
36Signed-off-by: Armin Kuster <akuster@mvista.com>
37
38---
39 libiberty/ChangeLog | 19 +++++++++++++
40 libiberty/cp-demangle.c | 52 ++++++++++++++++++++---------------
41 libiberty/testsuite/demangle-expected | 14 ++++++++--
42 3 files changed, 61 insertions(+), 24 deletions(-)
43
44Index: gcc-5.3.0/libiberty/cp-demangle.c
45===================================================================
46--- gcc-5.3.0.orig/libiberty/cp-demangle.c
47+++ gcc-5.3.0/libiberty/cp-demangle.c
48@@ -124,6 +124,13 @@ extern char *alloca ();
49 # endif /* alloca */
50 #endif /* HAVE_ALLOCA_H */
51
52+#ifdef HAVE_LIMITS_H
53+#include <limits.h>
54+#endif
55+#ifndef INT_MAX
56+# define INT_MAX (int)(((unsigned int) ~0) >> 1) /* 0x7FFFFFFF */
57+#endif
58+
59 #include "ansidecl.h"
60 #include "libiberty.h"
61 #include "demangle.h"
62@@ -394,7 +401,7 @@ d_make_dtor (struct d_info *, enum gnu_v
63 struct demangle_component *);
64
65 static struct demangle_component *
66-d_make_template_param (struct d_info *, long);
67+d_make_template_param (struct d_info *, int);
68
69 static struct demangle_component *
70 d_make_sub (struct d_info *, const char *, int);
71@@ -417,7 +424,7 @@ static struct demangle_component *d_unqu
72
73 static struct demangle_component *d_source_name (struct d_info *);
74
75-static long d_number (struct d_info *);
76+static int d_number (struct d_info *);
77
78 static struct demangle_component *d_identifier (struct d_info *, int);
79
80@@ -1105,7 +1112,7 @@ d_make_dtor (struct d_info *di, enum gnu
81 /* Add a new template parameter. */
82
83 static struct demangle_component *
84-d_make_template_param (struct d_info *di, long i)
85+d_make_template_param (struct d_info *di, int i)
86 {
87 struct demangle_component *p;
88
89@@ -1121,7 +1128,7 @@ d_make_template_param (struct d_info *di
90 /* Add a new function parameter. */
91
92 static struct demangle_component *
93-d_make_function_param (struct d_info *di, long i)
94+d_make_function_param (struct d_info *di, int i)
95 {
96 struct demangle_component *p;
97
98@@ -1595,7 +1602,7 @@ d_unqualified_name (struct d_info *di)
99 static struct demangle_component *
100 d_source_name (struct d_info *di)
101 {
102- long len;
103+ int len;
104 struct demangle_component *ret;
105
106 len = d_number (di);
107@@ -1608,12 +1615,12 @@ d_source_name (struct d_info *di)
108
109 /* number ::= [n] <(non-negative decimal integer)> */
110
111-static long
112+static int
113 d_number (struct d_info *di)
114 {
115 int negative;
116 char peek;
117- long ret;
118+ int ret;
119
120 negative = 0;
121 peek = d_peek_char (di);
122@@ -1840,7 +1847,7 @@ d_java_resource (struct d_info *di)
123 {
124 struct demangle_component *p = NULL;
125 struct demangle_component *next = NULL;
126- long len, i;
127+ int len, i;
128 char c;
129 const char *str;
130
131@@ -1982,7 +1989,7 @@ d_special_name (struct d_info *di)
132 case 'C':
133 {
134 struct demangle_component *derived_type;
135- long offset;
136+ int offset;
137 struct demangle_component *base_type;
138
139 derived_type = cplus_demangle_type (di);
140@@ -2905,10 +2912,10 @@ d_pointer_to_member_type (struct d_info
141
142 /* <non-negative number> _ */
143
144-static long
145+static int
146 d_compact_number (struct d_info *di)
147 {
148- long num;
149+ int num;
150 if (d_peek_char (di) == '_')
151 num = 0;
152 else if (d_peek_char (di) == 'n')
153@@ -2916,7 +2923,7 @@ d_compact_number (struct d_info *di)
154 else
155 num = d_number (di) + 1;
156
157- if (! d_check_char (di, '_'))
158+ if (num < 0 || ! d_check_char (di, '_'))
159 return -1;
160 return num;
161 }
162@@ -2928,7 +2935,7 @@ d_compact_number (struct d_info *di)
163 static struct demangle_component *
164 d_template_param (struct d_info *di)
165 {
166- long param;
167+ int param;
168
169 if (! d_check_char (di, 'T'))
170 return NULL;
171@@ -3130,9 +3137,10 @@ d_expression_1 (struct d_info *di)
172 }
173 else
174 {
175- index = d_compact_number (di) + 1;
176- if (index == 0)
177+ index = d_compact_number (di);
178+ if (index == INT_MAX || index == -1)
179 return NULL;
180+ index ++;
181 }
182 return d_make_function_param (di, index);
183 }
184@@ -3455,7 +3463,7 @@ d_local_name (struct d_info *di)
185 static int
186 d_discriminator (struct d_info *di)
187 {
188- long discrim;
189+ int discrim;
190
191 if (d_peek_char (di) != '_')
192 return 1;
193@@ -3511,7 +3519,7 @@ static struct demangle_component *
194 d_unnamed_type (struct d_info *di)
195 {
196 struct demangle_component *ret;
197- long num;
198+ int num;
199
200 if (! d_check_char (di, 'U'))
201 return NULL;
202@@ -4037,10 +4045,10 @@ d_append_string (struct d_print_info *dp
203 }
204
205 static inline void
206-d_append_num (struct d_print_info *dpi, long l)
207+d_append_num (struct d_print_info *dpi, int l)
208 {
209 char buf[25];
210- sprintf (buf,"%ld", l);
211+ sprintf (buf,"%d", l);
212 d_append_string (dpi, buf);
213 }
214
215Index: gcc-5.3.0/libiberty/testsuite/demangle-expected
216===================================================================
217--- gcc-5.3.0.orig/libiberty/testsuite/demangle-expected
218+++ gcc-5.3.0/libiberty/testsuite/demangle-expected
219@@ -4357,12 +4357,22 @@ _QueueNotification_QueueController__$4PP
220 _Z1fSsB3fooS_
221 f(std::string[abi:foo], std::string[abi:foo])
222 #
223-# Tests a use-after-free problem
224+# Tests a use-after-free problem PR70481
225
226 _Q.__0
227 ::Q.(void)
228 #
229-# Tests a use-after-free problem
230+# Tests a use-after-free problem PR70481
231
232 _Q10-__9cafebabe.
233 cafebabe.::-(void)
234+#
235+# Tests integer overflow problem PR70492
236+
237+__vt_90000000000cafebabe
238+__vt_90000000000cafebabe
239+#
240+# Tests write access violation PR70498
241+
242+_Z80800000000000000000000
243+_Z80800000000000000000000
244Index: gcc-5.3.0/libiberty/ChangeLog
245===================================================================
246--- gcc-5.3.0.orig/libiberty/ChangeLog
247+++ gcc-5.3.0/libiberty/ChangeLog
248@@ -1,3 +1,22 @@
249+2016-05-02 Marcel Böhme <boehme.marcel@gmail.com>
250+
251+ PR c++/70498
252+ * cp-demangle.c: Parse numbers as integer instead of long to avoid
253+ overflow after sanity checks. Include <limits.h> if available.
254+ (INT_MAX): Define if necessary.
255+ (d_make_template_param): Takes integer argument instead of long.
256+ (d_make_function_param): Likewise.
257+ (d_append_num): Likewise.
258+ (d_identifier): Likewise.
259+ (d_number): Parse as and return integer.
260+ (d_compact_number): Handle overflow.
261+ (d_source_name): Change variable type to integer for parsed number.
262+ (d_java_resource): Likewise.
263+ (d_special_name): Likewise.
264+ (d_discriminator): Likewise.
265+ (d_unnamed_type): Likewise.
266+ * testsuite/demangle-expected: Add regression test cases.
267+
268 2016-04-08 Marcel Böhme <boehme.marcel@gmail.com>
269
270 PR c++/69687
diff --git a/meta/recipes-devtools/gcc/gcc-5.3.inc b/meta/recipes-devtools/gcc/gcc-5.4.inc
index 8613a10d0c..338530fd6d 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3.inc
+++ b/meta/recipes-devtools/gcc/gcc-5.4.inc
@@ -2,15 +2,15 @@ require gcc-common.inc
2 2
3# Third digit in PV should be incremented after a minor release 3# Third digit in PV should be incremented after a minor release
4 4
5PV = "5.3.0" 5PV = "5.4.0"
6 6
7#SNAP = "5-20150405" 7#SNAP = "5-20150405"
8 8
9# BINV should be incremented to a revision after a minor gcc release 9# BINV should be incremented to a revision after a minor gcc release
10 10
11BINV = "5.3.0" 11BINV = "5.4.0"
12 12
13FILESEXTRAPATHS =. "${FILE_DIRNAME}/gcc-5.3:${FILE_DIRNAME}/gcc-5.3/backport:" 13FILESEXTRAPATHS =. "${FILE_DIRNAME}/gcc-5.4:${FILE_DIRNAME}/gcc-5.4/backport:"
14 14
15DEPENDS =+ "mpfr gmp libmpc zlib" 15DEPENDS =+ "mpfr gmp libmpc zlib"
16NATIVEDEPS = "mpfr-native gmp-native libmpc-native zlib-native" 16NATIVEDEPS = "mpfr-native gmp-native libmpc-native zlib-native"
@@ -89,18 +89,13 @@ SRC_URI = "\
89 file://0057-unwind-fix-for-musl.patch \ 89 file://0057-unwind-fix-for-musl.patch \
90 file://0058-fdebug-prefix-map-support-to-remap-relative-path.patch \ 90 file://0058-fdebug-prefix-map-support-to-remap-relative-path.patch \
91 file://0059-libgcc-use-ldflags.patch \ 91 file://0059-libgcc-use-ldflags.patch \
92 file://0060-remove-prototypes-cfns.patch \
93 file://0061-nios2-Make-assert-less-restrictive.patch \
94 file://CVE-2016-4488.patch \
95 file://CVE-2016-4489.patch \
96 file://CVE-2016-2226.patch \
97 file://CVE-2016-4490.patch \
98" 92"
99 93
100BACKPORTS = "" 94BACKPORTS = ""
101 95
102SRC_URI[md5sum] = "c9616fd448f980259c31de613e575719" 96SRC_URI[md5sum] = "4c626ac2a83ef30dfb9260e6f59c2b30"
103SRC_URI[sha256sum] = "b84f5592e9218b73dbae612b5253035a7b34a9a1f7688d2e1bfaaf7267d5c4db" 97SRC_URI[sha256sum] = "608df76dec2d34de6558249d8af4cbee21eceddbcb580d666f7a5a583ca3303a"
98
104UPSTREAM_CHECK_REGEX = "gcc-(?P<pver>5\.\d+\.\d+).tar" 99UPSTREAM_CHECK_REGEX = "gcc-(?P<pver>5\.\d+\.\d+).tar"
105 100
106#S = "${TMPDIR}/work-shared/gcc-${PV}-${PR}/gcc-${SNAP}" 101#S = "${TMPDIR}/work-shared/gcc-${PV}-${PR}/gcc-${SNAP}"
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch b/meta/recipes-devtools/gcc/gcc-5.4/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch
index 1aead9691a..1aead9691a 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0002-uclibc-conf.patch b/meta/recipes-devtools/gcc/gcc-5.4/0002-uclibc-conf.patch
index 8d6aeb5e43..8d6aeb5e43 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0002-uclibc-conf.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0002-uclibc-conf.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0003-gcc-uclibc-locale-ctype_touplow_t.patch b/meta/recipes-devtools/gcc/gcc-5.4/0003-gcc-uclibc-locale-ctype_touplow_t.patch
index bd0326343e..bd0326343e 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0003-gcc-uclibc-locale-ctype_touplow_t.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0003-gcc-uclibc-locale-ctype_touplow_t.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0004-uclibc-locale.patch b/meta/recipes-devtools/gcc/gcc-5.4/0004-uclibc-locale.patch
index 656265a285..656265a285 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0004-uclibc-locale.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0004-uclibc-locale.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0005-uclibc-locale-no__x.patch b/meta/recipes-devtools/gcc/gcc-5.4/0005-uclibc-locale-no__x.patch
index 19a86a4e1d..19a86a4e1d 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0005-uclibc-locale-no__x.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0005-uclibc-locale-no__x.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0006-uclibc-locale-wchar_fix.patch b/meta/recipes-devtools/gcc/gcc-5.4/0006-uclibc-locale-wchar_fix.patch
index d7dbe68bd2..d7dbe68bd2 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0006-uclibc-locale-wchar_fix.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0006-uclibc-locale-wchar_fix.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0007-uclibc-locale-update.patch b/meta/recipes-devtools/gcc/gcc-5.4/0007-uclibc-locale-update.patch
index cde749931d..cde749931d 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0007-uclibc-locale-update.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0007-uclibc-locale-update.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0008-missing-execinfo_h.patch b/meta/recipes-devtools/gcc/gcc-5.4/0008-missing-execinfo_h.patch
index 9f8793125e..9f8793125e 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0008-missing-execinfo_h.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0008-missing-execinfo_h.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0009-c99-snprintf.patch b/meta/recipes-devtools/gcc/gcc-5.4/0009-c99-snprintf.patch
index 6b236c62c0..6b236c62c0 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0009-c99-snprintf.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0009-c99-snprintf.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0010-gcc-poison-system-directories.patch b/meta/recipes-devtools/gcc/gcc-5.4/0010-gcc-poison-system-directories.patch
index 2da8877672..2da8877672 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0010-gcc-poison-system-directories.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0010-gcc-poison-system-directories.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0011-gcc-poison-dir-extend.patch b/meta/recipes-devtools/gcc/gcc-5.4/0011-gcc-poison-dir-extend.patch
index 511e69481b..511e69481b 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0011-gcc-poison-dir-extend.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0011-gcc-poison-dir-extend.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0012-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch b/meta/recipes-devtools/gcc/gcc-5.4/0012-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch
index 750bbc8238..750bbc8238 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0012-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0012-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0013-64-bit-multilib-hack.patch b/meta/recipes-devtools/gcc/gcc-5.4/0013-64-bit-multilib-hack.patch
index 45aaf4cc22..45aaf4cc22 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0013-64-bit-multilib-hack.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0013-64-bit-multilib-hack.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0014-optional-libstdc.patch b/meta/recipes-devtools/gcc/gcc-5.4/0014-optional-libstdc.patch
index 73741f83cc..73741f83cc 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0014-optional-libstdc.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0014-optional-libstdc.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0015-gcc-disable-MASK_RELAX_PIC_CALLS-bit.patch b/meta/recipes-devtools/gcc/gcc-5.4/0015-gcc-disable-MASK_RELAX_PIC_CALLS-bit.patch
index 1b62ef8065..1b62ef8065 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0015-gcc-disable-MASK_RELAX_PIC_CALLS-bit.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0015-gcc-disable-MASK_RELAX_PIC_CALLS-bit.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0016-COLLECT_GCC_OPTIONS.patch b/meta/recipes-devtools/gcc/gcc-5.4/0016-COLLECT_GCC_OPTIONS.patch
index e6ae262e4b..e6ae262e4b 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0016-COLLECT_GCC_OPTIONS.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0016-COLLECT_GCC_OPTIONS.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0017-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch b/meta/recipes-devtools/gcc/gcc-5.4/0017-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch
index b89a27919e..b89a27919e 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0017-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0017-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0018-fortran-cross-compile-hack.patch b/meta/recipes-devtools/gcc/gcc-5.4/0018-fortran-cross-compile-hack.patch
index e8ba325585..e8ba325585 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0018-fortran-cross-compile-hack.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0018-fortran-cross-compile-hack.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0019-libgcc-sjlj-check.patch b/meta/recipes-devtools/gcc/gcc-5.4/0019-libgcc-sjlj-check.patch
index 01a4d1fdab..01a4d1fdab 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0019-libgcc-sjlj-check.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0019-libgcc-sjlj-check.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0020-cpp-honor-sysroot.patch b/meta/recipes-devtools/gcc/gcc-5.4/0020-cpp-honor-sysroot.patch
index 13f66d4136..13f66d4136 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0020-cpp-honor-sysroot.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0020-cpp-honor-sysroot.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0021-MIPS64-Default-to-N64-ABI.patch b/meta/recipes-devtools/gcc/gcc-5.4/0021-MIPS64-Default-to-N64-ABI.patch
index c7cffe417d..c7cffe417d 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0021-MIPS64-Default-to-N64-ABI.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0021-MIPS64-Default-to-N64-ABI.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0022-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch b/meta/recipes-devtools/gcc/gcc-5.4/0022-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch
index 6208351324..6208351324 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0022-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0022-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0023-gcc-Fix-argument-list-too-long-error.patch b/meta/recipes-devtools/gcc/gcc-5.4/0023-gcc-Fix-argument-list-too-long-error.patch
index be91c9e638..be91c9e638 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0023-gcc-Fix-argument-list-too-long-error.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0023-gcc-Fix-argument-list-too-long-error.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0024-Disable-sdt.patch b/meta/recipes-devtools/gcc/gcc-5.4/0024-Disable-sdt.patch
index b23ce97563..b23ce97563 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0024-Disable-sdt.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0024-Disable-sdt.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0025-libtool.patch b/meta/recipes-devtools/gcc/gcc-5.4/0025-libtool.patch
index 8d5eb973bc..8d5eb973bc 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0025-libtool.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0025-libtool.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0026-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch b/meta/recipes-devtools/gcc/gcc-5.4/0026-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch
index a22d95f721..a22d95f721 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0026-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0026-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0027-Use-the-multilib-config-files-from-B-instead-of-usin.patch b/meta/recipes-devtools/gcc/gcc-5.4/0027-Use-the-multilib-config-files-from-B-instead-of-usin.patch
index 46815d1569..46815d1569 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0027-Use-the-multilib-config-files-from-B-instead-of-usin.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0027-Use-the-multilib-config-files-from-B-instead-of-usin.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0028-Avoid-using-libdir-from-.la-which-usually-points-to-.patch b/meta/recipes-devtools/gcc/gcc-5.4/0028-Avoid-using-libdir-from-.la-which-usually-points-to-.patch
index 60ddd9cee7..60ddd9cee7 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0028-Avoid-using-libdir-from-.la-which-usually-points-to-.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0028-Avoid-using-libdir-from-.la-which-usually-points-to-.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0029-export-CPP.patch b/meta/recipes-devtools/gcc/gcc-5.4/0029-export-CPP.patch
index 62195aa872..62195aa872 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0029-export-CPP.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0029-export-CPP.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0030-Enable-SPE-AltiVec-generation-on-powepc-linux-target.patch b/meta/recipes-devtools/gcc/gcc-5.4/0030-Enable-SPE-AltiVec-generation-on-powepc-linux-target.patch
index 57051871b3..57051871b3 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0030-Enable-SPE-AltiVec-generation-on-powepc-linux-target.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0030-Enable-SPE-AltiVec-generation-on-powepc-linux-target.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0031-Disable-the-MULTILIB_OSDIRNAMES-and-other-multilib-o.patch b/meta/recipes-devtools/gcc/gcc-5.4/0031-Disable-the-MULTILIB_OSDIRNAMES-and-other-multilib-o.patch
index f2bc66432c..f2bc66432c 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0031-Disable-the-MULTILIB_OSDIRNAMES-and-other-multilib-o.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0031-Disable-the-MULTILIB_OSDIRNAMES-and-other-multilib-o.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0032-Ensure-target-gcc-headers-can-be-included.patch b/meta/recipes-devtools/gcc/gcc-5.4/0032-Ensure-target-gcc-headers-can-be-included.patch
index 89503ff60e..89503ff60e 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0032-Ensure-target-gcc-headers-can-be-included.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0032-Ensure-target-gcc-headers-can-be-included.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0033-gcc-4.8-won-t-build-with-disable-dependency-tracking.patch b/meta/recipes-devtools/gcc/gcc-5.4/0033-gcc-4.8-won-t-build-with-disable-dependency-tracking.patch
index 19d480f3d7..19d480f3d7 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0033-gcc-4.8-won-t-build-with-disable-dependency-tracking.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0033-gcc-4.8-won-t-build-with-disable-dependency-tracking.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0034-Don-t-search-host-directory-during-relink-if-inst_pr.patch b/meta/recipes-devtools/gcc/gcc-5.4/0034-Don-t-search-host-directory-during-relink-if-inst_pr.patch
index a453fa6b34..a453fa6b34 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0034-Don-t-search-host-directory-during-relink-if-inst_pr.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0034-Don-t-search-host-directory-during-relink-if-inst_pr.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0035-Dont-link-the-plugins-with-libgomp-explicitly.patch b/meta/recipes-devtools/gcc/gcc-5.4/0035-Dont-link-the-plugins-with-libgomp-explicitly.patch
index 6ed589beb8..6ed589beb8 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0035-Dont-link-the-plugins-with-libgomp-explicitly.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0035-Dont-link-the-plugins-with-libgomp-explicitly.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0036-Use-SYSTEMLIBS_DIR-replacement-instead-of-hardcoding.patch b/meta/recipes-devtools/gcc/gcc-5.4/0036-Use-SYSTEMLIBS_DIR-replacement-instead-of-hardcoding.patch
index 41c0294da4..41c0294da4 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0036-Use-SYSTEMLIBS_DIR-replacement-instead-of-hardcoding.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0036-Use-SYSTEMLIBS_DIR-replacement-instead-of-hardcoding.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0037-aarch64-Add-support-for-musl-ldso.patch b/meta/recipes-devtools/gcc/gcc-5.4/0037-aarch64-Add-support-for-musl-ldso.patch
index 30dbe74ef2..30dbe74ef2 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0037-aarch64-Add-support-for-musl-ldso.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0037-aarch64-Add-support-for-musl-ldso.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0038-fix-g-sysroot.patch b/meta/recipes-devtools/gcc/gcc-5.4/0038-fix-g-sysroot.patch
index 9ba574a5c6..9ba574a5c6 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0038-fix-g-sysroot.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0038-fix-g-sysroot.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0039-libcc1-fix-libcc1-s-install-path-and-rpath.patch b/meta/recipes-devtools/gcc/gcc-5.4/0039-libcc1-fix-libcc1-s-install-path-and-rpath.patch
index 2e0df968bd..2e0df968bd 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0039-libcc1-fix-libcc1-s-install-path-and-rpath.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0039-libcc1-fix-libcc1-s-install-path-and-rpath.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0040-handle-sysroot-support-for-nativesdk-gcc.patch b/meta/recipes-devtools/gcc/gcc-5.4/0040-handle-sysroot-support-for-nativesdk-gcc.patch
index 11e1310f14..11e1310f14 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0040-handle-sysroot-support-for-nativesdk-gcc.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0040-handle-sysroot-support-for-nativesdk-gcc.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0041-Search-target-sysroot-gcc-version-specific-dirs-with.patch b/meta/recipes-devtools/gcc/gcc-5.4/0041-Search-target-sysroot-gcc-version-specific-dirs-with.patch
index 5a504a1f22..5a504a1f22 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0041-Search-target-sysroot-gcc-version-specific-dirs-with.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0041-Search-target-sysroot-gcc-version-specific-dirs-with.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0042-Fix-various-_FOR_BUILD-and-related-variables.patch b/meta/recipes-devtools/gcc/gcc-5.4/0042-Fix-various-_FOR_BUILD-and-related-variables.patch
index 5af764b7c7..5af764b7c7 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0042-Fix-various-_FOR_BUILD-and-related-variables.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0042-Fix-various-_FOR_BUILD-and-related-variables.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0043-libstdc-Support-musl.patch b/meta/recipes-devtools/gcc/gcc-5.4/0043-libstdc-Support-musl.patch
index bad8402ef8..bad8402ef8 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0043-libstdc-Support-musl.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0043-libstdc-Support-musl.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0044-Adding-mmusl-as-a-musl-libc-specifier-and-the-necess.patch b/meta/recipes-devtools/gcc/gcc-5.4/0044-Adding-mmusl-as-a-musl-libc-specifier-and-the-necess.patch
index b91c02d0b4..b91c02d0b4 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0044-Adding-mmusl-as-a-musl-libc-specifier-and-the-necess.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0044-Adding-mmusl-as-a-musl-libc-specifier-and-the-necess.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0045-Support-for-arm-linux-musl.patch b/meta/recipes-devtools/gcc/gcc-5.4/0045-Support-for-arm-linux-musl.patch
index 3c1115aa86..3c1115aa86 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0045-Support-for-arm-linux-musl.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0045-Support-for-arm-linux-musl.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0046-Get-rid-of-ever-broken-fixincludes-on-musl.patch b/meta/recipes-devtools/gcc/gcc-5.4/0046-Get-rid-of-ever-broken-fixincludes-on-musl.patch
index ddb0fc4f40..ddb0fc4f40 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0046-Get-rid-of-ever-broken-fixincludes-on-musl.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0046-Get-rid-of-ever-broken-fixincludes-on-musl.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0047-nios2-Define-MUSL_DYNAMIC_LINKER.patch b/meta/recipes-devtools/gcc/gcc-5.4/0047-nios2-Define-MUSL_DYNAMIC_LINKER.patch
index a1cfb9c7a0..a1cfb9c7a0 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0047-nios2-Define-MUSL_DYNAMIC_LINKER.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0047-nios2-Define-MUSL_DYNAMIC_LINKER.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0048-ssp_nonshared.patch b/meta/recipes-devtools/gcc/gcc-5.4/0048-ssp_nonshared.patch
index 5ddd40a4aa..5ddd40a4aa 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0048-ssp_nonshared.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0048-ssp_nonshared.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0049-Disable-the-weak-reference-logic-in-gthr.h-for-os-ge.patch b/meta/recipes-devtools/gcc/gcc-5.4/0049-Disable-the-weak-reference-logic-in-gthr.h-for-os-ge.patch
index 0ea5143e0d..0ea5143e0d 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0049-Disable-the-weak-reference-logic-in-gthr.h-for-os-ge.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0049-Disable-the-weak-reference-logic-in-gthr.h-for-os-ge.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0050-powerpc-pass-secure-plt-to-the-linker.patch b/meta/recipes-devtools/gcc/gcc-5.4/0050-powerpc-pass-secure-plt-to-the-linker.patch
index b2f2bbdf46..b2f2bbdf46 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0050-powerpc-pass-secure-plt-to-the-linker.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0050-powerpc-pass-secure-plt-to-the-linker.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0051-Ignore-fdebug-prefix-map-in-producer-string-by-Danie.patch b/meta/recipes-devtools/gcc/gcc-5.4/0051-Ignore-fdebug-prefix-map-in-producer-string-by-Danie.patch
index e8f79b590a..e8f79b590a 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0051-Ignore-fdebug-prefix-map-in-producer-string-by-Danie.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0051-Ignore-fdebug-prefix-map-in-producer-string-by-Danie.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0052-nios2-use-ret-with-r31.patch b/meta/recipes-devtools/gcc/gcc-5.4/0052-nios2-use-ret-with-r31.patch
index f3cb47fd13..f3cb47fd13 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0052-nios2-use-ret-with-r31.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0052-nios2-use-ret-with-r31.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0053-expr.c-PR-target-65358-Avoid-clobbering-partial-argu.patch b/meta/recipes-devtools/gcc/gcc-5.4/0053-expr.c-PR-target-65358-Avoid-clobbering-partial-argu.patch
index c18f40e740..c18f40e740 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0053-expr.c-PR-target-65358-Avoid-clobbering-partial-argu.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0053-expr.c-PR-target-65358-Avoid-clobbering-partial-argu.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0054-support-ffile-prefix-map.patch b/meta/recipes-devtools/gcc/gcc-5.4/0054-support-ffile-prefix-map.patch
index da16879132..da16879132 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0054-support-ffile-prefix-map.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0054-support-ffile-prefix-map.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0055-Reuse-fdebug-prefix-map-to-replace-ffile-prefix-map.patch b/meta/recipes-devtools/gcc/gcc-5.4/0055-Reuse-fdebug-prefix-map-to-replace-ffile-prefix-map.patch
index c7caed8c86..c7caed8c86 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0055-Reuse-fdebug-prefix-map-to-replace-ffile-prefix-map.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0055-Reuse-fdebug-prefix-map-to-replace-ffile-prefix-map.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0056-Enable-libc-provide-ssp-and-gcc_cv_target_dl_iterate.patch b/meta/recipes-devtools/gcc/gcc-5.4/0056-Enable-libc-provide-ssp-and-gcc_cv_target_dl_iterate.patch
index 97913420e0..97913420e0 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0056-Enable-libc-provide-ssp-and-gcc_cv_target_dl_iterate.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0056-Enable-libc-provide-ssp-and-gcc_cv_target_dl_iterate.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0057-unwind-fix-for-musl.patch b/meta/recipes-devtools/gcc/gcc-5.4/0057-unwind-fix-for-musl.patch
index c193587bf9..c193587bf9 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0057-unwind-fix-for-musl.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0057-unwind-fix-for-musl.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0058-fdebug-prefix-map-support-to-remap-relative-path.patch b/meta/recipes-devtools/gcc/gcc-5.4/0058-fdebug-prefix-map-support-to-remap-relative-path.patch
index 0b91fdbbcf..0b91fdbbcf 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0058-fdebug-prefix-map-support-to-remap-relative-path.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0058-fdebug-prefix-map-support-to-remap-relative-path.patch
diff --git a/meta/recipes-devtools/gcc/gcc-5.3/0059-libgcc-use-ldflags.patch b/meta/recipes-devtools/gcc/gcc-5.4/0059-libgcc-use-ldflags.patch
index 325b72ab5f..325b72ab5f 100644
--- a/meta/recipes-devtools/gcc/gcc-5.3/0059-libgcc-use-ldflags.patch
+++ b/meta/recipes-devtools/gcc/gcc-5.4/0059-libgcc-use-ldflags.patch
diff --git a/meta/recipes-devtools/gcc/gcc-cross-canadian_5.3.bb b/meta/recipes-devtools/gcc/gcc-cross-canadian_5.4.bb
index bf53c5cd78..bf53c5cd78 100644
--- a/meta/recipes-devtools/gcc/gcc-cross-canadian_5.3.bb
+++ b/meta/recipes-devtools/gcc/gcc-cross-canadian_5.4.bb
diff --git a/meta/recipes-devtools/gcc/gcc-cross-initial_5.3.bb b/meta/recipes-devtools/gcc/gcc-cross-initial_5.4.bb
index 4c73e5ce61..4c73e5ce61 100644
--- a/meta/recipes-devtools/gcc/gcc-cross-initial_5.3.bb
+++ b/meta/recipes-devtools/gcc/gcc-cross-initial_5.4.bb
diff --git a/meta/recipes-devtools/gcc/gcc-cross_5.3.bb b/meta/recipes-devtools/gcc/gcc-cross_5.4.bb
index b43cca0c52..b43cca0c52 100644
--- a/meta/recipes-devtools/gcc/gcc-cross_5.3.bb
+++ b/meta/recipes-devtools/gcc/gcc-cross_5.4.bb
diff --git a/meta/recipes-devtools/gcc/gcc-crosssdk-initial_5.3.bb b/meta/recipes-devtools/gcc/gcc-crosssdk-initial_5.4.bb
index fd90e1140f..fd90e1140f 100644
--- a/meta/recipes-devtools/gcc/gcc-crosssdk-initial_5.3.bb
+++ b/meta/recipes-devtools/gcc/gcc-crosssdk-initial_5.4.bb
diff --git a/meta/recipes-devtools/gcc/gcc-crosssdk_5.3.bb b/meta/recipes-devtools/gcc/gcc-crosssdk_5.4.bb
index 40a6c4feff..40a6c4feff 100644
--- a/meta/recipes-devtools/gcc/gcc-crosssdk_5.3.bb
+++ b/meta/recipes-devtools/gcc/gcc-crosssdk_5.4.bb
diff --git a/meta/recipes-devtools/gcc/gcc-runtime_5.3.bb b/meta/recipes-devtools/gcc/gcc-runtime_5.4.bb
index 8f31e7792e..8f31e7792e 100644
--- a/meta/recipes-devtools/gcc/gcc-runtime_5.3.bb
+++ b/meta/recipes-devtools/gcc/gcc-runtime_5.4.bb
diff --git a/meta/recipes-devtools/gcc/gcc-sanitizers_5.3.bb b/meta/recipes-devtools/gcc/gcc-sanitizers_5.4.bb
index 601f666023..601f666023 100644
--- a/meta/recipes-devtools/gcc/gcc-sanitizers_5.3.bb
+++ b/meta/recipes-devtools/gcc/gcc-sanitizers_5.4.bb
diff --git a/meta/recipes-devtools/gcc/gcc-source_5.3.bb b/meta/recipes-devtools/gcc/gcc-source_5.4.bb
index b890fa33ea..b890fa33ea 100644
--- a/meta/recipes-devtools/gcc/gcc-source_5.3.bb
+++ b/meta/recipes-devtools/gcc/gcc-source_5.4.bb
diff --git a/meta/recipes-devtools/gcc/gcc_5.3.bb b/meta/recipes-devtools/gcc/gcc_5.4.bb
index b0a523cae2..b0a523cae2 100644
--- a/meta/recipes-devtools/gcc/gcc_5.3.bb
+++ b/meta/recipes-devtools/gcc/gcc_5.4.bb
diff --git a/meta/recipes-devtools/gcc/libgcc-initial_5.3.bb b/meta/recipes-devtools/gcc/libgcc-initial_5.4.bb
index 19f253fce8..19f253fce8 100644
--- a/meta/recipes-devtools/gcc/libgcc-initial_5.3.bb
+++ b/meta/recipes-devtools/gcc/libgcc-initial_5.4.bb
diff --git a/meta/recipes-devtools/gcc/libgcc_5.3.bb b/meta/recipes-devtools/gcc/libgcc_5.4.bb
index a5152f28e9..a5152f28e9 100644
--- a/meta/recipes-devtools/gcc/libgcc_5.3.bb
+++ b/meta/recipes-devtools/gcc/libgcc_5.4.bb
diff --git a/meta/recipes-devtools/gcc/libgfortran_5.3.bb b/meta/recipes-devtools/gcc/libgfortran_5.4.bb
index 71dd8b4bdc..71dd8b4bdc 100644
--- a/meta/recipes-devtools/gcc/libgfortran_5.3.bb
+++ b/meta/recipes-devtools/gcc/libgfortran_5.4.bb