1 |
commit: 417f0afc6bbda0eb075bd8025f9b41d0cba2ca14 |
2 |
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org> |
3 |
AuthorDate: Thu May 30 21:45:41 2019 +0000 |
4 |
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org> |
5 |
CommitDate: Thu May 30 21:45:41 2019 +0000 |
6 |
URL: https://gitweb.gentoo.org/proj/gcc-patches.git/commit/?id=417f0afc |
7 |
|
8 |
4.*.*: fix build failure against gcc-9 |
9 |
|
10 |
It's a workaround against https://gcc.gnu.org/PR90677 |
11 |
where 'cgraph_node' is effectively forbidden for function names. |
12 |
|
13 |
Bug: https://gcc.gnu.org/PR90677 |
14 |
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org> |
15 |
|
16 |
4.0.4/gentoo/88_all_cgraph_node-gcc-9.patch | 44 ++++++++++++++++++++++++++++ |
17 |
4.0.4/gentoo/README.history | 1 + |
18 |
4.1.2/gentoo/98_all_cgraph_node-gcc-9.patch | 44 ++++++++++++++++++++++++++++ |
19 |
4.1.2/gentoo/README.history | 1 + |
20 |
4.2.4/gentoo/96_all_cgraph_node-gcc-9.patch | 44 ++++++++++++++++++++++++++++ |
21 |
4.2.4/gentoo/README.history | 1 + |
22 |
4.3.6/gentoo/94_all_cgraph_node-gcc-9.patch | 44 ++++++++++++++++++++++++++++ |
23 |
4.3.6/gentoo/README.history | 1 + |
24 |
4.4.7/gentoo/99_all_cgraph_node-gcc-9.patch | 44 ++++++++++++++++++++++++++++ |
25 |
4.4.7/gentoo/README.history | 1 + |
26 |
4.5.4/gentoo/102_all_cgraph_node-gcc-9.patch | 22 ++++++++++++++ |
27 |
4.5.4/gentoo/README.history | 1 + |
28 |
4.6.4/gentoo/97_all_cgraph_node-gcc-9.patch | 22 ++++++++++++++ |
29 |
4.6.4/gentoo/README.history | 1 + |
30 |
14 files changed, 271 insertions(+) |
31 |
|
32 |
diff --git a/4.0.4/gentoo/88_all_cgraph_node-gcc-9.patch b/4.0.4/gentoo/88_all_cgraph_node-gcc-9.patch |
33 |
new file mode 100644 |
34 |
index 0000000..fe95a0d |
35 |
--- /dev/null |
36 |
+++ b/4.0.4/gentoo/88_all_cgraph_node-gcc-9.patch |
37 |
@@ -0,0 +1,44 @@ |
38 |
+The patch is a workaround to build this version of gcc with |
39 |
+gcc-9.1.0: https://gcc.gnu.org/PR90677 |
40 |
+ |
41 |
+There gcc-9.1.0 pinned 'cgraph_node' to a wired-in type and |
42 |
+disallows anything else (function names in this case) to share |
43 |
+'cgraph_node' name. |
44 |
+ |
45 |
+Without this patch build fails as: |
46 |
+gcc-4.6.4/gcc/pretty-print.h:322:6: error: 'cgraph_node' is not defined as a type |
47 |
+ 322 | ATTRIBUTE_GCC_PPDIAG(2,3); |
48 |
+ | ^~~~~~~~~~~~~ |
49 |
+--- a/gcc/c-tree.h |
50 |
++++ b/gcc/c-tree.h |
51 |
+@@ -609,7 +609,7 @@ extern void c_write_global_declarations (void); |
52 |
+ diagnostic framework extensions, you must include this file before |
53 |
+ toplev.h, not after. */ |
54 |
+ #define GCC_DIAG_STYLE __gcc_cdiag__ |
55 |
+-#if GCC_VERSION >= 3005 |
56 |
++#if (GCC_VERSION >= 3005) && (GCC_VERSION != 9001) /* 9.1.0 is buggy: https://gcc.gnu.org/PR90677 */ |
57 |
+ #define ATTRIBUTE_GCC_CDIAG(m, n) __attribute__ ((__format__ (GCC_DIAG_STYLE, m ,n))) ATTRIBUTE_NONNULL(m) |
58 |
+ #else |
59 |
+ #define ATTRIBUTE_GCC_CDIAG(m, n) ATTRIBUTE_NONNULL(m) |
60 |
+--- a/gcc/pretty-print.h |
61 |
++++ b/gcc/pretty-print.h |
62 |
+@@ -253,7 +253,7 @@ extern void pp_base_append_text (pretty_printer *, const char *, const char *); |
63 |
+ |
64 |
+ /* This header may be included before toplev.h, hence the duplicate |
65 |
+ definitions to allow for GCC-specific formats. */ |
66 |
+-#if GCC_VERSION >= 3005 |
67 |
++#if (GCC_VERSION >= 3005) && (GCC_VERSION != 9001) /* 9.1.0 is buggy: https://gcc.gnu.org/PR90677 */ |
68 |
+ #define ATTRIBUTE_GCC_PPDIAG(m, n) __attribute__ ((__format__ (__gcc_diag__, m ,n))) ATTRIBUTE_NONNULL(m) |
69 |
+ #else |
70 |
+ #define ATTRIBUTE_GCC_PPDIAG(m, n) ATTRIBUTE_NONNULL(m) |
71 |
+--- a/gcc/toplev.h |
72 |
++++ b/gcc/toplev.h |
73 |
+@@ -52,7 +52,7 @@ extern void _fatal_insn (const char *, rtx, const char *, int, const char *) |
74 |
+ specifiers. We must use custom format checks. Note that at present |
75 |
+ the front-end %D specifier is used in non-front-end code with some |
76 |
+ functions, and those formats can only be checked in front-end code. */ |
77 |
+-#if GCC_VERSION >= 3005 |
78 |
++#if (GCC_VERSION >= 3005) && (GCC_VERSION != 9001) /* 9.1.0 is buggy: https://gcc.gnu.org/PR90677 */ |
79 |
+ #define ATTRIBUTE_GCC_DIAG(m, n) __attribute__ ((__format__ (GCC_DIAG_STYLE, m, n))) ATTRIBUTE_NONNULL(m) |
80 |
+ #ifdef NO_FRONT_END_DIAG |
81 |
+ #define ATTRIBUTE_GCC_FE_DIAG(m, n) ATTRIBUTE_NONNULL(m) |
82 |
|
83 |
diff --git a/4.0.4/gentoo/README.history b/4.0.4/gentoo/README.history |
84 |
index 4d92217..0e98546 100644 |
85 |
--- a/4.0.4/gentoo/README.history |
86 |
+++ b/4.0.4/gentoo/README.history |
87 |
@@ -1,5 +1,6 @@ |
88 |
1.5 TODO |
89 |
+ 87_all_libjava-ucontext.patch |
90 |
+ + 88_all_cgraph_node-gcc-9.patch |
91 |
|
92 |
1.4 23 Sep 2018 |
93 |
+ 86_all_ucontext-to-ucontext_t.patch |
94 |
|
95 |
diff --git a/4.1.2/gentoo/98_all_cgraph_node-gcc-9.patch b/4.1.2/gentoo/98_all_cgraph_node-gcc-9.patch |
96 |
new file mode 100644 |
97 |
index 0000000..92f27a8 |
98 |
--- /dev/null |
99 |
+++ b/4.1.2/gentoo/98_all_cgraph_node-gcc-9.patch |
100 |
@@ -0,0 +1,44 @@ |
101 |
+The patch is a workaround to build this version of gcc with |
102 |
+gcc-9.1.0: https://gcc.gnu.org/PR90677 |
103 |
+ |
104 |
+There gcc-9.1.0 pinned 'cgraph_node' to a wired-in type and |
105 |
+disallows anything else (function names in this case) to share |
106 |
+'cgraph_node' name. |
107 |
+ |
108 |
+Without this patch build fails as: |
109 |
+gcc-4.6.4/gcc/pretty-print.h:322:6: error: 'cgraph_node' is not defined as a type |
110 |
+ 322 | ATTRIBUTE_GCC_PPDIAG(2,3); |
111 |
+ | ^~~~~~~~~~~~~ |
112 |
+--- a/gcc/pretty-print.h |
113 |
++++ b/gcc/pretty-print.h |
114 |
+@@ -305,7 +305,7 @@ extern void pp_base_append_text (pretty_printer *, const char *, const char *); |
115 |
+ |
116 |
+ /* This header may be included before diagnostics-core.h, hence the duplicate |
117 |
+ definitions to allow for GCC-specific formats. */ |
118 |
+-#if GCC_VERSION >= 3005 |
119 |
++#if (GCC_VERSION >= 3005) && (GCC_VERSION != 9001) /* 9.1.0 is buggy: https://gcc.gnu.org/PR90677 */ |
120 |
+ #define ATTRIBUTE_GCC_PPDIAG(m, n) __attribute__ ((__format__ (__gcc_diag__, m ,n))) ATTRIBUTE_NONNULL(m) |
121 |
+ #else |
122 |
+ #define ATTRIBUTE_GCC_PPDIAG(m, n) ATTRIBUTE_NONNULL(m) |
123 |
+--- a/gcc/c-tree.h |
124 |
++++ b/gcc/c-tree.h |
125 |
+@@ -638,7 +638,7 @@ extern void c_write_global_declarations (void); |
126 |
+ /* In order for the format checking to accept the C frontend |
127 |
+ diagnostic framework extensions, you must include this file before |
128 |
+ toplev.h, not after. */ |
129 |
+-#if GCC_VERSION >= 4001 |
130 |
++#if (GCC_VERSION >= 4001) && (GCC_VERSION != 9001) /* 9.1.0 is buggy: https://gcc.gnu.org/PR90677 */ |
131 |
+ #define ATTRIBUTE_GCC_CDIAG(m, n) __attribute__ ((__format__ (GCC_DIAG_STYLE, m ,n))) ATTRIBUTE_NONNULL(m) |
132 |
+ #else |
133 |
+ #define ATTRIBUTE_GCC_CDIAG(m, n) ATTRIBUTE_NONNULL(m) |
134 |
+--- a/gcc/toplev.h |
135 |
++++ b/gcc/toplev.h |
136 |
+@@ -49,7 +49,7 @@ extern void _fatal_insn (const char *, const_rtx, const char *, int, const char |
137 |
+ /* None of these functions are suitable for ATTRIBUTE_PRINTF, because |
138 |
+ each language front end can extend them with its own set of format |
139 |
+ specifiers. We must use custom format checks. */ |
140 |
+-#if GCC_VERSION >= 4001 |
141 |
++#if (GCC_VERSION >= 4001) && (GCC_VERSION != 9001) /* 9.1.0 is buggy: https://gcc.gnu.org/PR90677 */ |
142 |
+ #define ATTRIBUTE_GCC_DIAG(m, n) __attribute__ ((__format__ (GCC_DIAG_STYLE, m, n))) ATTRIBUTE_NONNULL(m) |
143 |
+ #else |
144 |
+ #define ATTRIBUTE_GCC_DIAG(m, n) ATTRIBUTE_NONNULL(m) |
145 |
|
146 |
diff --git a/4.1.2/gentoo/README.history b/4.1.2/gentoo/README.history |
147 |
index e4b1de7..1a91ef2 100644 |
148 |
--- a/4.1.2/gentoo/README.history |
149 |
+++ b/4.1.2/gentoo/README.history |
150 |
@@ -1,5 +1,6 @@ |
151 |
1.8 TODO |
152 |
+ 97_all_libjava-ucontext.patch |
153 |
+ + 98_all_cgraph_node-gcc-9.patch |
154 |
|
155 |
1.7 23 Sep 2018 |
156 |
+ 96_all_ucontext-to-ucontext_t.patch |
157 |
|
158 |
diff --git a/4.2.4/gentoo/96_all_cgraph_node-gcc-9.patch b/4.2.4/gentoo/96_all_cgraph_node-gcc-9.patch |
159 |
new file mode 100644 |
160 |
index 0000000..92f27a8 |
161 |
--- /dev/null |
162 |
+++ b/4.2.4/gentoo/96_all_cgraph_node-gcc-9.patch |
163 |
@@ -0,0 +1,44 @@ |
164 |
+The patch is a workaround to build this version of gcc with |
165 |
+gcc-9.1.0: https://gcc.gnu.org/PR90677 |
166 |
+ |
167 |
+There gcc-9.1.0 pinned 'cgraph_node' to a wired-in type and |
168 |
+disallows anything else (function names in this case) to share |
169 |
+'cgraph_node' name. |
170 |
+ |
171 |
+Without this patch build fails as: |
172 |
+gcc-4.6.4/gcc/pretty-print.h:322:6: error: 'cgraph_node' is not defined as a type |
173 |
+ 322 | ATTRIBUTE_GCC_PPDIAG(2,3); |
174 |
+ | ^~~~~~~~~~~~~ |
175 |
+--- a/gcc/pretty-print.h |
176 |
++++ b/gcc/pretty-print.h |
177 |
+@@ -305,7 +305,7 @@ extern void pp_base_append_text (pretty_printer *, const char *, const char *); |
178 |
+ |
179 |
+ /* This header may be included before diagnostics-core.h, hence the duplicate |
180 |
+ definitions to allow for GCC-specific formats. */ |
181 |
+-#if GCC_VERSION >= 3005 |
182 |
++#if (GCC_VERSION >= 3005) && (GCC_VERSION != 9001) /* 9.1.0 is buggy: https://gcc.gnu.org/PR90677 */ |
183 |
+ #define ATTRIBUTE_GCC_PPDIAG(m, n) __attribute__ ((__format__ (__gcc_diag__, m ,n))) ATTRIBUTE_NONNULL(m) |
184 |
+ #else |
185 |
+ #define ATTRIBUTE_GCC_PPDIAG(m, n) ATTRIBUTE_NONNULL(m) |
186 |
+--- a/gcc/c-tree.h |
187 |
++++ b/gcc/c-tree.h |
188 |
+@@ -638,7 +638,7 @@ extern void c_write_global_declarations (void); |
189 |
+ /* In order for the format checking to accept the C frontend |
190 |
+ diagnostic framework extensions, you must include this file before |
191 |
+ toplev.h, not after. */ |
192 |
+-#if GCC_VERSION >= 4001 |
193 |
++#if (GCC_VERSION >= 4001) && (GCC_VERSION != 9001) /* 9.1.0 is buggy: https://gcc.gnu.org/PR90677 */ |
194 |
+ #define ATTRIBUTE_GCC_CDIAG(m, n) __attribute__ ((__format__ (GCC_DIAG_STYLE, m ,n))) ATTRIBUTE_NONNULL(m) |
195 |
+ #else |
196 |
+ #define ATTRIBUTE_GCC_CDIAG(m, n) ATTRIBUTE_NONNULL(m) |
197 |
+--- a/gcc/toplev.h |
198 |
++++ b/gcc/toplev.h |
199 |
+@@ -49,7 +49,7 @@ extern void _fatal_insn (const char *, const_rtx, const char *, int, const char |
200 |
+ /* None of these functions are suitable for ATTRIBUTE_PRINTF, because |
201 |
+ each language front end can extend them with its own set of format |
202 |
+ specifiers. We must use custom format checks. */ |
203 |
+-#if GCC_VERSION >= 4001 |
204 |
++#if (GCC_VERSION >= 4001) && (GCC_VERSION != 9001) /* 9.1.0 is buggy: https://gcc.gnu.org/PR90677 */ |
205 |
+ #define ATTRIBUTE_GCC_DIAG(m, n) __attribute__ ((__format__ (GCC_DIAG_STYLE, m, n))) ATTRIBUTE_NONNULL(m) |
206 |
+ #else |
207 |
+ #define ATTRIBUTE_GCC_DIAG(m, n) ATTRIBUTE_NONNULL(m) |
208 |
|
209 |
diff --git a/4.2.4/gentoo/README.history b/4.2.4/gentoo/README.history |
210 |
index 5eef5ee..b36f3e0 100644 |
211 |
--- a/4.2.4/gentoo/README.history |
212 |
+++ b/4.2.4/gentoo/README.history |
213 |
@@ -1,6 +1,7 @@ |
214 |
1.6 TODO |
215 |
+ 94_all_gcc-libgomp-no-werror.patch |
216 |
+ 95_all_libjava-ucontext.patch |
217 |
+ + 96_all_cgraph_node-gcc-9.patch |
218 |
|
219 |
1.5 23 Sep 2018 |
220 |
+ 93_all_ucontext-to-ucontext_t.patch |
221 |
|
222 |
diff --git a/4.3.6/gentoo/94_all_cgraph_node-gcc-9.patch b/4.3.6/gentoo/94_all_cgraph_node-gcc-9.patch |
223 |
new file mode 100644 |
224 |
index 0000000..92f27a8 |
225 |
--- /dev/null |
226 |
+++ b/4.3.6/gentoo/94_all_cgraph_node-gcc-9.patch |
227 |
@@ -0,0 +1,44 @@ |
228 |
+The patch is a workaround to build this version of gcc with |
229 |
+gcc-9.1.0: https://gcc.gnu.org/PR90677 |
230 |
+ |
231 |
+There gcc-9.1.0 pinned 'cgraph_node' to a wired-in type and |
232 |
+disallows anything else (function names in this case) to share |
233 |
+'cgraph_node' name. |
234 |
+ |
235 |
+Without this patch build fails as: |
236 |
+gcc-4.6.4/gcc/pretty-print.h:322:6: error: 'cgraph_node' is not defined as a type |
237 |
+ 322 | ATTRIBUTE_GCC_PPDIAG(2,3); |
238 |
+ | ^~~~~~~~~~~~~ |
239 |
+--- a/gcc/pretty-print.h |
240 |
++++ b/gcc/pretty-print.h |
241 |
+@@ -305,7 +305,7 @@ extern void pp_base_append_text (pretty_printer *, const char *, const char *); |
242 |
+ |
243 |
+ /* This header may be included before diagnostics-core.h, hence the duplicate |
244 |
+ definitions to allow for GCC-specific formats. */ |
245 |
+-#if GCC_VERSION >= 3005 |
246 |
++#if (GCC_VERSION >= 3005) && (GCC_VERSION != 9001) /* 9.1.0 is buggy: https://gcc.gnu.org/PR90677 */ |
247 |
+ #define ATTRIBUTE_GCC_PPDIAG(m, n) __attribute__ ((__format__ (__gcc_diag__, m ,n))) ATTRIBUTE_NONNULL(m) |
248 |
+ #else |
249 |
+ #define ATTRIBUTE_GCC_PPDIAG(m, n) ATTRIBUTE_NONNULL(m) |
250 |
+--- a/gcc/c-tree.h |
251 |
++++ b/gcc/c-tree.h |
252 |
+@@ -638,7 +638,7 @@ extern void c_write_global_declarations (void); |
253 |
+ /* In order for the format checking to accept the C frontend |
254 |
+ diagnostic framework extensions, you must include this file before |
255 |
+ toplev.h, not after. */ |
256 |
+-#if GCC_VERSION >= 4001 |
257 |
++#if (GCC_VERSION >= 4001) && (GCC_VERSION != 9001) /* 9.1.0 is buggy: https://gcc.gnu.org/PR90677 */ |
258 |
+ #define ATTRIBUTE_GCC_CDIAG(m, n) __attribute__ ((__format__ (GCC_DIAG_STYLE, m ,n))) ATTRIBUTE_NONNULL(m) |
259 |
+ #else |
260 |
+ #define ATTRIBUTE_GCC_CDIAG(m, n) ATTRIBUTE_NONNULL(m) |
261 |
+--- a/gcc/toplev.h |
262 |
++++ b/gcc/toplev.h |
263 |
+@@ -49,7 +49,7 @@ extern void _fatal_insn (const char *, const_rtx, const char *, int, const char |
264 |
+ /* None of these functions are suitable for ATTRIBUTE_PRINTF, because |
265 |
+ each language front end can extend them with its own set of format |
266 |
+ specifiers. We must use custom format checks. */ |
267 |
+-#if GCC_VERSION >= 4001 |
268 |
++#if (GCC_VERSION >= 4001) && (GCC_VERSION != 9001) /* 9.1.0 is buggy: https://gcc.gnu.org/PR90677 */ |
269 |
+ #define ATTRIBUTE_GCC_DIAG(m, n) __attribute__ ((__format__ (GCC_DIAG_STYLE, m, n))) ATTRIBUTE_NONNULL(m) |
270 |
+ #else |
271 |
+ #define ATTRIBUTE_GCC_DIAG(m, n) ATTRIBUTE_NONNULL(m) |
272 |
|
273 |
diff --git a/4.3.6/gentoo/README.history b/4.3.6/gentoo/README.history |
274 |
index 4422206..d9fdb94 100644 |
275 |
--- a/4.3.6/gentoo/README.history |
276 |
+++ b/4.3.6/gentoo/README.history |
277 |
@@ -1,5 +1,6 @@ |
278 |
1.4 TODO |
279 |
+ 93_all_libjava-ucontext.patch |
280 |
+ + 94_all_cgraph_node-gcc-9.patch |
281 |
|
282 |
1.3 23 Sep 2018 |
283 |
+ 92_all_ucontext-to-ucontext_t.patch |
284 |
|
285 |
diff --git a/4.4.7/gentoo/99_all_cgraph_node-gcc-9.patch b/4.4.7/gentoo/99_all_cgraph_node-gcc-9.patch |
286 |
new file mode 100644 |
287 |
index 0000000..92f27a8 |
288 |
--- /dev/null |
289 |
+++ b/4.4.7/gentoo/99_all_cgraph_node-gcc-9.patch |
290 |
@@ -0,0 +1,44 @@ |
291 |
+The patch is a workaround to build this version of gcc with |
292 |
+gcc-9.1.0: https://gcc.gnu.org/PR90677 |
293 |
+ |
294 |
+There gcc-9.1.0 pinned 'cgraph_node' to a wired-in type and |
295 |
+disallows anything else (function names in this case) to share |
296 |
+'cgraph_node' name. |
297 |
+ |
298 |
+Without this patch build fails as: |
299 |
+gcc-4.6.4/gcc/pretty-print.h:322:6: error: 'cgraph_node' is not defined as a type |
300 |
+ 322 | ATTRIBUTE_GCC_PPDIAG(2,3); |
301 |
+ | ^~~~~~~~~~~~~ |
302 |
+--- a/gcc/pretty-print.h |
303 |
++++ b/gcc/pretty-print.h |
304 |
+@@ -305,7 +305,7 @@ extern void pp_base_append_text (pretty_printer *, const char *, const char *); |
305 |
+ |
306 |
+ /* This header may be included before diagnostics-core.h, hence the duplicate |
307 |
+ definitions to allow for GCC-specific formats. */ |
308 |
+-#if GCC_VERSION >= 3005 |
309 |
++#if (GCC_VERSION >= 3005) && (GCC_VERSION != 9001) /* 9.1.0 is buggy: https://gcc.gnu.org/PR90677 */ |
310 |
+ #define ATTRIBUTE_GCC_PPDIAG(m, n) __attribute__ ((__format__ (__gcc_diag__, m ,n))) ATTRIBUTE_NONNULL(m) |
311 |
+ #else |
312 |
+ #define ATTRIBUTE_GCC_PPDIAG(m, n) ATTRIBUTE_NONNULL(m) |
313 |
+--- a/gcc/c-tree.h |
314 |
++++ b/gcc/c-tree.h |
315 |
+@@ -638,7 +638,7 @@ extern void c_write_global_declarations (void); |
316 |
+ /* In order for the format checking to accept the C frontend |
317 |
+ diagnostic framework extensions, you must include this file before |
318 |
+ toplev.h, not after. */ |
319 |
+-#if GCC_VERSION >= 4001 |
320 |
++#if (GCC_VERSION >= 4001) && (GCC_VERSION != 9001) /* 9.1.0 is buggy: https://gcc.gnu.org/PR90677 */ |
321 |
+ #define ATTRIBUTE_GCC_CDIAG(m, n) __attribute__ ((__format__ (GCC_DIAG_STYLE, m ,n))) ATTRIBUTE_NONNULL(m) |
322 |
+ #else |
323 |
+ #define ATTRIBUTE_GCC_CDIAG(m, n) ATTRIBUTE_NONNULL(m) |
324 |
+--- a/gcc/toplev.h |
325 |
++++ b/gcc/toplev.h |
326 |
+@@ -49,7 +49,7 @@ extern void _fatal_insn (const char *, const_rtx, const char *, int, const char |
327 |
+ /* None of these functions are suitable for ATTRIBUTE_PRINTF, because |
328 |
+ each language front end can extend them with its own set of format |
329 |
+ specifiers. We must use custom format checks. */ |
330 |
+-#if GCC_VERSION >= 4001 |
331 |
++#if (GCC_VERSION >= 4001) && (GCC_VERSION != 9001) /* 9.1.0 is buggy: https://gcc.gnu.org/PR90677 */ |
332 |
+ #define ATTRIBUTE_GCC_DIAG(m, n) __attribute__ ((__format__ (GCC_DIAG_STYLE, m, n))) ATTRIBUTE_NONNULL(m) |
333 |
+ #else |
334 |
+ #define ATTRIBUTE_GCC_DIAG(m, n) ATTRIBUTE_NONNULL(m) |
335 |
|
336 |
diff --git a/4.4.7/gentoo/README.history b/4.4.7/gentoo/README.history |
337 |
index fd69b51..4975a3b 100644 |
338 |
--- a/4.4.7/gentoo/README.history |
339 |
+++ b/4.4.7/gentoo/README.history |
340 |
@@ -1,5 +1,6 @@ |
341 |
1.5 TODO |
342 |
+ 98_all_libjava-ucontext.patch |
343 |
+ + 99_all_cgraph_node-gcc-9.patch |
344 |
|
345 |
1.4 23 Sep 2018 |
346 |
U 93_all_gcc-4.4-cloog-dl.patch |
347 |
|
348 |
diff --git a/4.5.4/gentoo/102_all_cgraph_node-gcc-9.patch b/4.5.4/gentoo/102_all_cgraph_node-gcc-9.patch |
349 |
new file mode 100644 |
350 |
index 0000000..77c9a1d |
351 |
--- /dev/null |
352 |
+++ b/4.5.4/gentoo/102_all_cgraph_node-gcc-9.patch |
353 |
@@ -0,0 +1,22 @@ |
354 |
+The patch is a workaround to build this version of gcc with |
355 |
+gcc-9.1.0: https://gcc.gnu.org/PR90677 |
356 |
+ |
357 |
+There gcc-9.1.0 pinned 'cgraph_node' to a wired-in type and |
358 |
+disallows anything else (function names in this case) to share |
359 |
+'cgraph_node' name. |
360 |
+ |
361 |
+Without this patch build fails as: |
362 |
+gcc-4.6.4/gcc/pretty-print.h:322:6: error: 'cgraph_node' is not defined as a type |
363 |
+ 322 | ATTRIBUTE_GCC_PPDIAG(2,3); |
364 |
+ | ^~~~~~~~~~~~~ |
365 |
+--- a/gcc/pretty-print.h |
366 |
++++ b/gcc/pretty-print.h |
367 |
+@@ -305,7 +305,7 @@ extern void pp_base_append_text (pretty_printer *, const char *, const char *); |
368 |
+ |
369 |
+ /* This header may be included before diagnostics-core.h, hence the duplicate |
370 |
+ definitions to allow for GCC-specific formats. */ |
371 |
+-#if GCC_VERSION >= 3005 |
372 |
++#if (GCC_VERSION >= 3005) && (GCC_VERSION != 9001) /* 9.1.0 is buggy: https://gcc.gnu.org/PR90677 */ |
373 |
+ #define ATTRIBUTE_GCC_PPDIAG(m, n) __attribute__ ((__format__ (__gcc_diag__, m ,n))) ATTRIBUTE_NONNULL(m) |
374 |
+ #else |
375 |
+ #define ATTRIBUTE_GCC_PPDIAG(m, n) ATTRIBUTE_NONNULL(m) |
376 |
|
377 |
diff --git a/4.5.4/gentoo/README.history b/4.5.4/gentoo/README.history |
378 |
index 851fc67..5155ed5 100644 |
379 |
--- a/4.5.4/gentoo/README.history |
380 |
+++ b/4.5.4/gentoo/README.history |
381 |
@@ -1,5 +1,6 @@ |
382 |
1.5 TODO |
383 |
+ 101_all_libjava-ucontext.patch |
384 |
+ + 102_all_cgraph_node-gcc-9.patch |
385 |
|
386 |
1.4 23 Sep 2018 |
387 |
U 93_all_gcc-4.5-cloog-dl.patch |
388 |
|
389 |
diff --git a/4.6.4/gentoo/97_all_cgraph_node-gcc-9.patch b/4.6.4/gentoo/97_all_cgraph_node-gcc-9.patch |
390 |
new file mode 100644 |
391 |
index 0000000..77c9a1d |
392 |
--- /dev/null |
393 |
+++ b/4.6.4/gentoo/97_all_cgraph_node-gcc-9.patch |
394 |
@@ -0,0 +1,22 @@ |
395 |
+The patch is a workaround to build this version of gcc with |
396 |
+gcc-9.1.0: https://gcc.gnu.org/PR90677 |
397 |
+ |
398 |
+There gcc-9.1.0 pinned 'cgraph_node' to a wired-in type and |
399 |
+disallows anything else (function names in this case) to share |
400 |
+'cgraph_node' name. |
401 |
+ |
402 |
+Without this patch build fails as: |
403 |
+gcc-4.6.4/gcc/pretty-print.h:322:6: error: 'cgraph_node' is not defined as a type |
404 |
+ 322 | ATTRIBUTE_GCC_PPDIAG(2,3); |
405 |
+ | ^~~~~~~~~~~~~ |
406 |
+--- a/gcc/pretty-print.h |
407 |
++++ b/gcc/pretty-print.h |
408 |
+@@ -305,7 +305,7 @@ extern void pp_base_append_text (pretty_printer *, const char *, const char *); |
409 |
+ |
410 |
+ /* This header may be included before diagnostics-core.h, hence the duplicate |
411 |
+ definitions to allow for GCC-specific formats. */ |
412 |
+-#if GCC_VERSION >= 3005 |
413 |
++#if (GCC_VERSION >= 3005) && (GCC_VERSION != 9001) /* 9.1.0 is buggy: https://gcc.gnu.org/PR90677 */ |
414 |
+ #define ATTRIBUTE_GCC_PPDIAG(m, n) __attribute__ ((__format__ (__gcc_diag__, m ,n))) ATTRIBUTE_NONNULL(m) |
415 |
+ #else |
416 |
+ #define ATTRIBUTE_GCC_PPDIAG(m, n) ATTRIBUTE_NONNULL(m) |
417 |
|
418 |
diff --git a/4.6.4/gentoo/README.history b/4.6.4/gentoo/README.history |
419 |
index af8339f..247ea24 100644 |
420 |
--- a/4.6.4/gentoo/README.history |
421 |
+++ b/4.6.4/gentoo/README.history |
422 |
@@ -1,6 +1,7 @@ |
423 |
1.5 TODO |
424 |
+ 95_all_libjava-ucontext.patch |
425 |
+ 96_all_gcc-gperf-gnu-inline.patch |
426 |
+ + 97_all_cgraph_node-gcc-9.patch |
427 |
|
428 |
1.4 23 Sep 2018 |
429 |
- 10_all_default-fortify-source.patch |