[gentoo-commits] proj/gcc-patches:master commit in: 4.8.5/gentoo/

2019-06-01 Thread Sergei Trofimovich
commit: 28d89990740832d87ef34520fec5c20eb7a2ac41
Author: Sergei Trofimovich  gentoo  org>
AuthorDate: Sat Jun  1 08:27:56 2019 +
Commit: Sergei Trofimovich  gentoo  org>
CommitDate: Sat Jun  1 08:27:56 2019 +
URL:https://gitweb.gentoo.org/proj/gcc-patches.git/commit/?id=28d89990

4.8.5: cut 1.5 patchset

Four new patches:
96_all_stage1-ldflags.patch: fix LDFLAGS passing to STAGE1
97_all_libjava-ucontext.patch: fix ucontext definition for glibc-2.28
98_all_asan-signal_h.patch: fix signal declarations for glibc-2.28
99_all_libsanitizer-res_state-glibc-2.28.patch: fix libsanitizer for glibc-2.28

Bug: https://bugs.gentoo.org/629502
Bug: https://bugs.gentoo.org/671568
Signed-off-by: Sergei Trofimovich  gentoo.org>

 4.8.5/gentoo/README.history | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/4.8.5/gentoo/README.history b/4.8.5/gentoo/README.history
index 6cf4dd0..7387d1a 100644
--- a/4.8.5/gentoo/README.history
+++ b/4.8.5/gentoo/README.history
@@ -1,4 +1,4 @@
-1.5TODO
+1.51 Jun 2019
+ 96_all_stage1-ldflags.patch
+ 97_all_libjava-ucontext.patch
+ 98_all_asan-signal_h.patch



[gentoo-commits] proj/gcc-patches:master commit in: 4.8.5/gentoo/

2019-05-31 Thread Sergei Trofimovich
commit: c8c94f09b88542c7293b251c8e5bacb51b057a64
Author: Sergei Trofimovich  gentoo  org>
AuthorDate: Fri May 31 23:07:28 2019 +
Commit: Sergei Trofimovich  gentoo  org>
CommitDate: Fri May 31 23:07:28 2019 +
URL:https://gitweb.gentoo.org/proj/gcc-patches.git/commit/?id=c8c94f09

4.8.5: tweak libsanitizer for modern glibc

Reported-by: Guilherme Amadio
Bug: https://bugs.gentoo.org/671568
Signed-off-by: Sergei Trofimovich  gentoo.org>

 4.8.5/gentoo/99_all_libsanitizer-res_state-glibc-2.28.patch | 8 
 4.8.5/gentoo/README.history | 1 +
 2 files changed, 9 insertions(+)

diff --git a/4.8.5/gentoo/99_all_libsanitizer-res_state-glibc-2.28.patch 
b/4.8.5/gentoo/99_all_libsanitizer-res_state-glibc-2.28.patch
new file mode 100644
index 000..479aab0
--- /dev/null
+++ b/4.8.5/gentoo/99_all_libsanitizer-res_state-glibc-2.28.patch
@@ -0,0 +1,8 @@
+https://bugs.gentoo.org/671568
+--- a/libsanitizer/tsan/tsan_platform_linux.cc
 b/libsanitizer/tsan/tsan_platform_linux.cc
+@@ -294,3 +294,3 @@ int ExtractResolvFDs(void *state, int *fds, int nfd) {
+   int cnt = 0;
+-  __res_state *statp = (__res_state*)state;
++  struct __res_state *statp = (struct __res_state*)state;
+   for (int i = 0; i < MAXNS && cnt < nfd; i++) {

diff --git a/4.8.5/gentoo/README.history b/4.8.5/gentoo/README.history
index 65f15cc..6cf4dd0 100644
--- a/4.8.5/gentoo/README.history
+++ b/4.8.5/gentoo/README.history
@@ -2,6 +2,7 @@
+ 96_all_stage1-ldflags.patch
+ 97_all_libjava-ucontext.patch
+ 98_all_asan-signal_h.patch
+   + 99_all_libsanitizer-res_state-glibc-2.28.patch
 
 1.423 Sep 2018
U 09_all_default-ssp.patch



[gentoo-commits] proj/gcc-patches:master commit in: 4.8.5/gentoo/

2019-05-31 Thread Sergei Trofimovich
commit: 8b3934067086c1c581d2a27f8f0a5cc75dff1066
Author: Sergei Trofimovich  gentoo  org>
AuthorDate: Fri May 31 21:54:18 2019 +
Commit: Sergei Trofimovich  gentoo  org>
CommitDate: Fri May 31 21:54:18 2019 +
URL:https://gitweb.gentoo.org/proj/gcc-patches.git/commit/?id=8b393406

4.8.5: backport 98_all_asan-signal_h.patch

It's not enough yet to build libsanitizer against
glibc-2.28/.29 but it's a start.

Reported-by: Guilherme Amadio
Bug: https://bugs.gentoo.org/671568
Signed-off-by: Sergei Trofimovich  gentoo.org>

 4.8.5/gentoo/98_all_asan-signal_h.patch | 15 +++
 4.8.5/gentoo/README.history |  2 ++
 2 files changed, 17 insertions(+)

diff --git a/4.8.5/gentoo/98_all_asan-signal_h.patch 
b/4.8.5/gentoo/98_all_asan-signal_h.patch
new file mode 100644
index 000..8711d53
--- /dev/null
+++ b/4.8.5/gentoo/98_all_asan-signal_h.patch
@@ -0,0 +1,15 @@
+Fix error: ‘SIGSEGV’ was not declared in this scope
+
+https://bugs.gentoo.org/629502#c9
+https://patchwork.ozlabs.org/patch/725596/
+
+--- a/libsanitizer/asan/asan_linux.cc
 b/libsanitizer/asan/asan_linux.cc
+@@ -29,6 +29,7 @@
+ #include 
+ #include 
+ #include 
++#include 
+ #include 
+ #include 
+ #include 

diff --git a/4.8.5/gentoo/README.history b/4.8.5/gentoo/README.history
index 41965ea..65f15cc 100644
--- a/4.8.5/gentoo/README.history
+++ b/4.8.5/gentoo/README.history
@@ -1,6 +1,8 @@
 1.5TODO
+ 96_all_stage1-ldflags.patch
+ 97_all_libjava-ucontext.patch
+   + 98_all_asan-signal_h.patch
+
 1.423 Sep 2018
U 09_all_default-ssp.patch
+ 34_all_libjava-classpath-locale-sort.patch



[gentoo-commits] proj/gcc-patches:master commit in: 4.8.5/gentoo/

2018-11-19 Thread Sergei Trofimovich
commit: 31dd52a2c44dd23b963c97a62bfb413d6e640e2c
Author: Sergei Trofimovich  gentoo  org>
AuthorDate: Mon Nov 19 23:37:58 2018 +
Commit: Sergei Trofimovich  gentoo  org>
CommitDate: Mon Nov 19 23:37:58 2018 +
URL:https://gitweb.gentoo.org/proj/gcc-patches.git/commit/?id=31dd52a2

4.8.5: backport libjava-ucontext.patch: bug #671270

Reported-by: Cyp
Bug: https://bugs.gentoo.org/671270
Signed-off-by: Sergei Trofimovich  gentoo.org>

 4.8.5/gentoo/97_all_libjava-ucontext.patch | 62 ++
 4.8.5/gentoo/README.history|  1 +
 2 files changed, 63 insertions(+)

diff --git a/4.8.5/gentoo/97_all_libjava-ucontext.patch 
b/4.8.5/gentoo/97_all_libjava-ucontext.patch
new file mode 100644
index 000..6b823d8
--- /dev/null
+++ b/4.8.5/gentoo/97_all_libjava-ucontext.patch
@@ -0,0 +1,62 @@
+https://bugs.gentoo.org/629502
+
+From 9b9287cde20ea57578cf07efb2a96ed4cc0da36f Mon Sep 17 00:00:00 2001
+From: doko 
+Date: Thu, 7 Sep 2017 07:22:07 +
+Subject: [PATCH] 2017-09-07  Matthias Klose  
+
+* include/x86_64-signal.h (HANDLE_DIVIDE_OVERFLOW): Replace
+'struct ucontext' with ucontext_t.
+* include/i386-signal.h (HANDLE_DIVIDE_OVERFLOW): Likewise.
+* include/s390-signal.h (HANDLE_DIVIDE_OVERFLOW): Likewise.
+
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@251832 
138bc75d-0d04-0410-961f-82ee72b054a4
+---
+ libjava/include/i386-signal.h   | 2 +-
+ libjava/include/s390-signal.h   | 2 +-
+ libjava/include/x86_64-signal.h | 2 +-
+ 4 files changed, 10 insertions(+), 3 deletions(-)
+
+diff --git a/libjava/include/i386-signal.h b/libjava/include/i386-signal.h
+index c2409b0e301..ef77e7e99ae 100644
+--- a/libjava/include/i386-signal.h
 b/libjava/include/i386-signal.h
+@@ -29,7 +29,7 @@ static void _Jv_##_name (int, siginfo_t *,   
\
+ #define HANDLE_DIVIDE_OVERFLOW
\
+ do\
+ { \
+-  struct ucontext *_uc = (struct ucontext *)_p;   
\
++  ucontext_t *_uc = (ucontext_t *)_p; \
+   gregset_t &_gregs = _uc->uc_mcontext.gregs; \
+   unsigned char *_eip = (unsigned char *)_gregs[REG_EIP]; \
+   \
+diff --git a/libjava/include/s390-signal.h b/libjava/include/s390-signal.h
+index 4ca4c108864..9261b52be6e 100644
+--- a/libjava/include/s390-signal.h
 b/libjava/include/s390-signal.h
+@@ -51,7 +51,7 @@ do   
\
+   struct\
+   { \
+ unsigned long int uc_flags; \
+-struct ucontext *uc_link;   \
++ucontext_t *uc_link;\
+ stack_t uc_stack;   \
+ mcontext_t uc_mcontext; \
+ unsigned long sigmask[2];   \
+diff --git a/libjava/include/x86_64-signal.h b/libjava/include/x86_64-signal.h
+index 12383b5485a..e36c5a32a64 100644
+--- a/libjava/include/x86_64-signal.h
 b/libjava/include/x86_64-signal.h
+@@ -28,7 +28,7 @@ static void _Jv_##_name (int, siginfo_t *,   
\
+ #define HANDLE_DIVIDE_OVERFLOW
\
+ do\
+ { \
+-  struct ucontext *_uc = (struct ucontext *)_p;   
\
++  ucontext_t *_uc = (ucontext_t *)_p; \
+   gregset_t &_gregs = _uc->uc_mcontext.gregs; \
+   unsigned char *_rip = (unsigned char *)_gregs[REG_RIP]; \
+   \
+-- 
+2.15.1
+

diff --git a/4.8.5/gentoo/README.history b/4.8.5/gentoo/README.history
index 099ec69..41965ea 100644
--- a/4.8.5/gentoo/README.history
+++ b/4.8.5/gentoo/README.history
@@ -1,5 +1,6 @@
 1.5TODO
+ 96_all_stage1-ldflags.patch
+   + 97_all_libjava-ucontext.patch
 1.423 Sep 2018
U 09_all_default-ssp.patch
+ 34_all_libjava-classpath-locale-sort.patch



[gentoo-commits] proj/gcc-patches:master commit in: 4.8.5/gentoo/

2018-09-28 Thread Sergei Trofimovich
commit: 66dd69a78553b1905198032c248cd1243579e561
Author: Sergei Trofimovich  gentoo  org>
AuthorDate: Fri Sep 28 23:04:42 2018 +
Commit: Sergei Trofimovich  gentoo  org>
CommitDate: Fri Sep 28 23:04:42 2018 +
URL:https://gitweb.gentoo.org/proj/gcc-patches.git/commit/?id=66dd69a7

4.8.5: don't allow STAGE1_LDFLAGS to leak into next stages.

Noticed as a build failure in gentoo where -no-pie is passed
to STAGE1_LDFLAGS.

It's a backport of upstream patch.

Signed-off-by: Sergei Trofimovich  gentoo.org>

 4.8.5/gentoo/96_all_stage1-ldflags.patch | 62 
 4.8.5/gentoo/README.history  |  2 ++
 2 files changed, 64 insertions(+)

diff --git a/4.8.5/gentoo/96_all_stage1-ldflags.patch 
b/4.8.5/gentoo/96_all_stage1-ldflags.patch
new file mode 100644
index 000..5a7e5a5
--- /dev/null
+++ b/4.8.5/gentoo/96_all_stage1-ldflags.patch
@@ -0,0 +1,62 @@
+From 41a4aa66eac45c8862a79351647ec06dd03bd1f5 Mon Sep 17 00:00:00 2001
+From: jakub 
+Date: Sat, 13 Dec 2014 11:24:37 +
+Subject: [PATCH]   PR bootstrap/64023  * Makefile.tpl
+ (EXTRA_TARGET_FLAGS): Set STAGE1_LDFLAGS  to POSTSTAGE1_LDFLAGS and
+ STAGE1_LIBS to POSTSTAGE1_LIBS.   Add -B to libstdc++-v3/src/.libs and
+ libstdc++-v3/libsupc++/.libs  to CXX. * Makefile.in: Regenerated.
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218705 
138bc75d-0d04-0410-961f-82ee72b054a4
+---
+ ChangeLog| 9 +
+ Makefile.in  | 6 +-
+ Makefile.tpl | 6 +-
+ 3 files changed, 19 insertions(+), 2 deletions(-)
+
+--- a/Makefile.in
 b/Makefile.in
+@@ -835,7 +835,9 @@ EXTRA_TARGET_FLAGS = \
+   'AS=$(COMPILER_AS_FOR_TARGET)' \
+   'CC=$$(CC_FOR_TARGET) $$(XGCC_FLAGS_FOR_TARGET) $$(TFLAGS)' \
+   'CFLAGS=$$(CFLAGS_FOR_TARGET)' \
+-  'CXX=$$(CXX_FOR_TARGET) $$(XGCC_FLAGS_FOR_TARGET) $$(TFLAGS)' \
++  'CXX=$$(CXX_FOR_TARGET) -B$$r/$$(TARGET_SUBDIR)/libstdc++-v3/src/.libs \
++   -B$$r/$$(TARGET_SUBDIR)/libstdc++-v3/libsupc++/.libs \
++   $$(XGCC_FLAGS_FOR_TARGET) $$(TFLAGS)' \
+   'CXXFLAGS=$$(CXXFLAGS_FOR_TARGET)' \
+   'DLLTOOL=$$(DLLTOOL_FOR_TARGET)' \
+   'GCJ=$$(GCJ_FOR_TARGET) $$(XGCC_FLAGS_FOR_TARGET) $$(TFLAGS)' \
+@@ -853,6 +855,8 @@ EXTRA_TARGET_FLAGS = \
+   'WINDRES=$$(WINDRES_FOR_TARGET)' \
+   'WINDMC=$$(WINDMC_FOR_TARGET)' \
+   'XGCC_FLAGS_FOR_TARGET=$(XGCC_FLAGS_FOR_TARGET)' \
++  'STAGE1_LDFLAGS=$$(POSTSTAGE1_LDFLAGS)' \
++  'STAGE1_LIBS=$$(POSTSTAGE1_LIBS)' \
+   "TFLAGS=$$TFLAGS"
+ 
+ TARGET_FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS)
+--- a/Makefile.tpl
 b/Makefile.tpl
+@@ -641,7 +641,9 @@ EXTRA_TARGET_FLAGS = \
+   'AS=$(COMPILER_AS_FOR_TARGET)' \
+   'CC=$$(CC_FOR_TARGET) $$(XGCC_FLAGS_FOR_TARGET) $$(TFLAGS)' \
+   'CFLAGS=$$(CFLAGS_FOR_TARGET)' \
+-  'CXX=$$(CXX_FOR_TARGET) $$(XGCC_FLAGS_FOR_TARGET) $$(TFLAGS)' \
++  'CXX=$$(CXX_FOR_TARGET) -B$$r/$$(TARGET_SUBDIR)/libstdc++-v3/src/.libs \
++   -B$$r/$$(TARGET_SUBDIR)/libstdc++-v3/libsupc++/.libs \
++   $$(XGCC_FLAGS_FOR_TARGET) $$(TFLAGS)' \
+   'CXXFLAGS=$$(CXXFLAGS_FOR_TARGET)' \
+   'DLLTOOL=$$(DLLTOOL_FOR_TARGET)' \
+   'GCJ=$$(GCJ_FOR_TARGET) $$(XGCC_FLAGS_FOR_TARGET) $$(TFLAGS)' \
+@@ -659,6 +661,8 @@ EXTRA_TARGET_FLAGS = \
+   'WINDRES=$$(WINDRES_FOR_TARGET)' \
+   'WINDMC=$$(WINDMC_FOR_TARGET)' \
+   'XGCC_FLAGS_FOR_TARGET=$(XGCC_FLAGS_FOR_TARGET)' \
++  'STAGE1_LDFLAGS=$$(POSTSTAGE1_LDFLAGS)' \
++  'STAGE1_LIBS=$$(POSTSTAGE1_LIBS)' \
+   "TFLAGS=$$TFLAGS"
+ 
+ TARGET_FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS)
+-- 
+2.19.0
+

diff --git a/4.8.5/gentoo/README.history b/4.8.5/gentoo/README.history
index be9a4bb..099ec69 100644
--- a/4.8.5/gentoo/README.history
+++ b/4.8.5/gentoo/README.history
@@ -1,3 +1,5 @@
+1.5TODO
+   + 96_all_stage1-ldflags.patch
 1.423 Sep 2018
U 09_all_default-ssp.patch
+ 34_all_libjava-classpath-locale-sort.patch



[gentoo-commits] proj/gcc-patches:master commit in: 4.8.5/gentoo/

2018-09-23 Thread Sergei Trofimovich
commit: 750a7039e9195dfc98a3175ba04817a7943d8edf
Author: Sergei Trofimovich  gentoo  org>
AuthorDate: Sun Sep 23 21:09:13 2018 +
Commit: Sergei Trofimovich  gentoo  org>
CommitDate: Sun Sep 23 21:09:13 2018 +
URL:https://gitweb.gentoo.org/proj/gcc-patches.git/commit/?id=750a7039

4.8.5: cut 1.4 release

Signed-off-by: Sergei Trofimovich  gentoo.org>

 4.8.5/gentoo/README.history | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/4.8.5/gentoo/README.history b/4.8.5/gentoo/README.history
index f4762c4..be9a4bb 100644
--- a/4.8.5/gentoo/README.history
+++ b/4.8.5/gentoo/README.history
@@ -1,4 +1,4 @@
-1.4[pending]
+1.423 Sep 2018
U 09_all_default-ssp.patch
+ 34_all_libjava-classpath-locale-sort.patch
U 74_all_gcc48_cloog-dl.patch



[gentoo-commits] proj/gcc-patches:master commit in: 4.8.5/gentoo/

2018-09-15 Thread Sergei Trofimovich
commit: f64ee67a1767f75e7416942bdc6ceeeae031d56f
Author: Sergei Trofimovich  gentoo  org>
AuthorDate: Sat Sep 15 22:48:30 2018 +
Commit: Sergei Trofimovich  gentoo  org>
CommitDate: Sat Sep 15 22:48:30 2018 +
URL:https://gitweb.gentoo.org/proj/gcc-patches.git/commit/?id=f64ee67a

4.8.5: backport 'struct ucontext' to 'ucontext_t' rename in glibc

Signed-off-by: Sergei Trofimovich  gentoo.org>

 4.8.5/gentoo/95_all_ucontext-to-ucontext_t.patch | 178 +++
 4.8.5/gentoo/README.history  |   1 +
 2 files changed, 179 insertions(+)

diff --git a/4.8.5/gentoo/95_all_ucontext-to-ucontext_t.patch 
b/4.8.5/gentoo/95_all_ucontext-to-ucontext_t.patch
new file mode 100644
index 000..bdcf8b3
--- /dev/null
+++ b/4.8.5/gentoo/95_all_ucontext-to-ucontext_t.patch
@@ -0,0 +1,178 @@
+https://bugs.gentoo.org/629502
+
+From ecf0d1a107133c715763940c2b197aa814710e1b Mon Sep 17 00:00:00 2001
+From: jsm28 
+Date: Tue, 4 Jul 2017 10:25:10 +
+Subject: [PATCH] Use ucontext_t not struct ucontext in linux-unwind.h files.
+
+Current glibc no longer gives the ucontext_t type the tag struct
+ucontext, to conform with POSIX namespace rules.  This requires
+various linux-unwind.h files in libgcc, that were previously using
+struct ucontext, to be fixed to use ucontext_t instead.  This is
+similar to the removal of the struct siginfo tag from siginfo_t some
+years ago.
+
+This patch changes those files to use ucontext_t instead.  As the
+standard name that should be unconditionally safe, so this is not
+restricted to architectures supported by glibc, or conditioned on the
+glibc version.
+
+Tested compilation together with current glibc with glibc's
+build-many-glibcs.py.
+
+   * config/aarch64/linux-unwind.h (aarch64_fallback_frame_state),
+   config/alpha/linux-unwind.h (alpha_fallback_frame_state),
+   config/bfin/linux-unwind.h (bfin_fallback_frame_state),
+   config/i386/linux-unwind.h (x86_64_fallback_frame_state,
+   x86_fallback_frame_state), config/m68k/linux-unwind.h (struct
+   uw_ucontext), config/nios2/linux-unwind.h (struct nios2_ucontext),
+   config/pa/linux-unwind.h (pa32_fallback_frame_state),
+   config/sh/linux-unwind.h (sh_fallback_frame_state),
+   config/tilepro/linux-unwind.h (tile_fallback_frame_state),
+   config/xtensa/linux-unwind.h (xtensa_fallback_frame_state): Use
+   ucontext_t instead of struct ucontext.
+
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@249958 
138bc75d-0d04-0410-961f-82ee72b054a4
+---
+ libgcc/config/aarch64/linux-unwind.h |  2 +-
+ libgcc/config/alpha/linux-unwind.h   |  2 +-
+ libgcc/config/bfin/linux-unwind.h|  2 +-
+ libgcc/config/i386/linux-unwind.h|  4 ++--
+ libgcc/config/m68k/linux-unwind.h|  2 +-
+ libgcc/config/nios2/linux-unwind.h   |  2 +-
+ libgcc/config/pa/linux-unwind.h  |  2 +-
+ libgcc/config/sh/linux-unwind.h  |  2 +-
+ libgcc/config/tilepro/linux-unwind.h |  2 +-
+ libgcc/config/xtensa/linux-unwind.h  |  2 +-
+ 11 files changed, 25 insertions(+), 11 deletions(-)
+
+diff --git a/libgcc/config/aarch64/linux-unwind.h 
b/libgcc/config/aarch64/linux-unwind.h
+index 86d17b1c798..909f68f7311 100644
+--- a/libgcc/config/aarch64/linux-unwind.h
 b/libgcc/config/aarch64/linux-unwind.h
+@@ -52,7 +52,7 @@ aarch64_fallback_frame_state (struct _Unwind_Context 
*context,
+   struct rt_sigframe
+   {
+ siginfo_t info;
+-struct ucontext uc;
++ucontext_t uc;
+   };
+ 
+   struct rt_sigframe *rt_;
+diff --git a/libgcc/config/alpha/linux-unwind.h 
b/libgcc/config/alpha/linux-unwind.h
+index d65474fec12..9a226b195b5 100644
+--- a/libgcc/config/alpha/linux-unwind.h
 b/libgcc/config/alpha/linux-unwind.h
+@@ -51,7 +51,7 @@ alpha_fallback_frame_state (struct _Unwind_Context *context,
+ {
+   struct rt_sigframe {
+   siginfo_t info;
+-  struct ucontext uc;
++  ucontext_t uc;
+   } *rt_ = context->cfa;
+   sc = _->uc.uc_mcontext;
+ }
+diff --git a/libgcc/config/bfin/linux-unwind.h 
b/libgcc/config/bfin/linux-unwind.h
+index 0c270e435c7..7fa95d2dc96 100644
+--- a/libgcc/config/bfin/linux-unwind.h
 b/libgcc/config/bfin/linux-unwind.h
+@@ -52,7 +52,7 @@ bfin_fallback_frame_state (struct _Unwind_Context *context,
+   void *puc;
+   char retcode[8];
+   siginfo_t info;
+-  struct ucontext uc;
++  ucontext_t uc;
+   } *rt_ = context->cfa;
+ 
+   /* The void * cast is necessary to avoid an aliasing warning.
+diff --git a/libgcc/config/i386/linux-unwind.h 
b/libgcc/config/i386/linux-unwind.h
+index e54bf73b1fd..d35fc4566ce 100644
+--- a/libgcc/config/i386/linux-unwind.h
 b/libgcc/config/i386/linux-unwind.h
+@@ -58,7 +58,7 @@ x86_64_fallback_frame_state (struct _Unwind_Context *context,
+   if (*(unsigned char *)(pc+0) == 0x48
+   && *(unsigned long long *)(pc+1) == RT_SIGRETURN_SYSCALL)
+ {
+-  struct ucontext *uc_ = context->cfa;
++  ucontext_t *uc_ = 

[gentoo-commits] proj/gcc-patches:master commit in: 4.8.5/gentoo/

2018-09-15 Thread Sergei Trofimovich
commit: 526aeaf672317b52c737ea4b8a7481ee728906b2
Author: Sergei Trofimovich  gentoo  org>
AuthorDate: Sat Sep 15 22:43:40 2018 +
Commit: Sergei Trofimovich  gentoo  org>
CommitDate: Sat Sep 15 22:43:40 2018 +
URL:https://gitweb.gentoo.org/proj/gcc-patches.git/commit/?id=526aeaf6

4.8.5: fix gperf/inline build failure against modern gcc

Signed-off-by: Sergei Trofimovich  gentoo.org>

 4.8.5/gentoo/94_all_gcc-gperf-gnu-inline.patch | 64 ++
 4.8.5/gentoo/README.history|  1 +
 2 files changed, 65 insertions(+)

diff --git a/4.8.5/gentoo/94_all_gcc-gperf-gnu-inline.patch 
b/4.8.5/gentoo/94_all_gcc-gperf-gnu-inline.patch
new file mode 100644
index 000..b26647a
--- /dev/null
+++ b/4.8.5/gentoo/94_all_gcc-gperf-gnu-inline.patch
@@ -0,0 +1,64 @@
+https://gcc.gnu.org/ml/gcc-patches/2015-08/msg00375.html
+
+From 1de9842cba4749376b545a09ef0b4fc195d319a6 Mon Sep 17 00:00:00 2001
+From: Mike Frysinger 
+Date: Thu, 6 Aug 2015 23:32:54 -0400
+Subject: [PATCH] cfns: fix mismatch in gnu_inline attributes
+
+Since the 3.0.3 release of gperf (made in May 2007), the generated func
+has had the gnu_inline attribute applied to it.  The gcc source however
+has not been updated to include that which has lead to a mismatch.
+
+In practice, this hasn't been an issue for two reasons:
+(1) Before gcc-5, the default standard was (gnu) C89, and gcc does not
+warn or throw an error in this mode.
+(2) Starting with gcc-4.8, the compiler driver used to build gcc was
+changed to C++, and g++ does not warn or throw an error in this mode.
+
+This error does show up though when using gcc-5 to build gcc-4.7 or
+older as then the default is (gnu) C11 and the C compiler driver is
+used.  That failure looks like:
+In file included from .../gcc-4.7.4/gcc/cp/except.c:990:0:
+cfns.gperf: At top level:
+cfns.gperf:101:1: error: 'gnu_inline' attribute present on 'libc_name_p'
+cfns.gperf:26:14: error: but not here
+
+Whether the compiler should always emit this error regardless of the
+active standard or compiler driver is debatable (I think it should be
+consistent -- either always do it or never do it).
+---
+ gcc/cp/cfns.gperf | 3 +++
+ gcc/cp/cfns.h | 3 +++
+ 2 files changed, 6 insertions(+)
+
+diff --git a/gcc/cp/cfns.gperf b/gcc/cp/cfns.gperf
+index 68acd3d..953262f 100644
+--- a/gcc/cp/cfns.gperf
 b/gcc/cp/cfns.gperf
+@@ -22,6 +22,9 @@ __inline
+ static unsigned int hash (const char *, unsigned int);
+ #ifdef __GNUC__
+ __inline
++#ifdef __GNUC_STDC_INLINE__
++__attribute__ ((__gnu_inline__)) static
++#endif
+ #endif
+ const char * libc_name_p (const char *, unsigned int);
+ %}
+diff --git a/gcc/cp/cfns.h b/gcc/cp/cfns.h
+index 1c6665d..6d00c0e 100644
+--- a/gcc/cp/cfns.h
 b/gcc/cp/cfns.h
+@@ -53,6 +53,9 @@ __inline
+ static unsigned int hash (const char *, unsigned int);
+ #ifdef __GNUC__
+ __inline
++#ifdef __GNUC_STDC_INLINE__
++__attribute__ ((__gnu_inline__)) static
++#endif
+ #endif
+ const char * libc_name_p (const char *, unsigned int);
+ /* maximum key range = 391, duplicates = 0 */
+-- 
+2.4.4
+

diff --git a/4.8.5/gentoo/README.history b/4.8.5/gentoo/README.history
index 9219db9..dea5d99 100644
--- a/4.8.5/gentoo/README.history
+++ b/4.8.5/gentoo/README.history
@@ -2,6 +2,7 @@
U 09_all_default-ssp.patch
+ 34_all_libjava-classpath-locale-sort.patch
U 74_all_gcc48_cloog-dl.patch
+   + 94_all_gcc-gperf-gnu-inline.patch
 
 1.329 Aug 2015
U 74_all_gcc48_cloog-dl.patch