summaryrefslogtreecommitdiff
path: root/packages/gcc
diff options
context:
space:
mode:
authorAlexey Neyman <stilor@att.net>2022-01-02 00:23:19 (GMT)
committerAlexey Neyman <stilor@att.net>2022-02-11 08:47:50 (GMT)
commit4c6604e730ee786709e8c39ab9e54eec06990e49 (patch)
treed1fcf8036984156e23f2fca54cf80f685153d401 /packages/gcc
parent8d636658182a3e3f234e8ce032afc6562cd8dd01 (diff)
Remove gcc-oracle-4.8-44.0.5
GCC 4.8 and its prerequisites have been removed by 04dce680, 41d4583a and e4221734; as a result, 4.8-based version of gcc-oracle became unbuildable (no valid versions for the prerequisites). Update the samples to use 4.9.4; which however fails to build on a modern host GCC. Build fix backported to gcc-4.9 and gcc-5 versions. Fix binutils-oracle build with host GCC11. Signed-off-by: Alexey Neyman <stilor@att.net>
Diffstat (limited to 'packages/gcc')
-rw-r--r--packages/gcc/4.9.4/0034-c++17-build-failure.patch17
-rw-r--r--packages/gcc/5.5.0/0035-c++17-build-failure.patch21
2 files changed, 38 insertions, 0 deletions
diff --git a/packages/gcc/4.9.4/0034-c++17-build-failure.patch b/packages/gcc/4.9.4/0034-c++17-build-failure.patch
new file mode 100644
index 0000000..cc56aca
--- /dev/null
+++ b/packages/gcc/4.9.4/0034-c++17-build-failure.patch
@@ -0,0 +1,17 @@
+Fixes
+
+.../gcc/reload1.c:89:24: error: use of an operand of type 'bool' in 'operator++' is forbidden in C++17
+
+Fixed upstream in GCC6+ in d57c99458933.
+
+--- gcc-4.9.4/gcc/reload.h 2022-01-01 15:51:43.293254281 -0800
++++ gcc-4.9.4/gcc/reload.h 2022-01-01 15:51:58.437424873 -0800
+@@ -166,7 +166,7 @@
+ value indicates the level of indirect addressing supported, e.g., two
+ means that (MEM (MEM (REG n))) is also valid if (REG n) does not get
+ a hard register. */
+- bool x_spill_indirect_levels;
++ unsigned char x_spill_indirect_levels;
+
+ /* True if caller-save has been reinitialized. */
+ bool x_caller_save_initialized_p;
diff --git a/packages/gcc/5.5.0/0035-c++17-build-failure.patch b/packages/gcc/5.5.0/0035-c++17-build-failure.patch
new file mode 100644
index 0000000..a99af49
--- /dev/null
+++ b/packages/gcc/5.5.0/0035-c++17-build-failure.patch
@@ -0,0 +1,21 @@
+Fixes
+
+.../gcc/reload1.c:89:24: error: use of an operand of type 'bool' in 'operator++' is forbidden in C++17
+
+Fixed upstream in GCC6+ in d57c99458933.
+
+---
+ gcc/reload.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/gcc/reload.h
++++ b/gcc/reload.h
+@@ -168,7 +168,7 @@
+ value indicates the level of indirect addressing supported, e.g., two
+ means that (MEM (MEM (REG n))) is also valid if (REG n) does not get
+ a hard register. */
+- bool x_spill_indirect_levels;
++ unsigned char x_spill_indirect_levels;
+
+ /* True if caller-save has been reinitialized. */
+ bool x_caller_save_initialized_p;