summaryrefslogtreecommitdiff
path: root/libgcc
diff options
context:
space:
mode:
authorktietz <ktietz@138bc75d-0d04-0410-961f-82ee72b054a4>2012-02-20 21:22:07 +0000
committerktietz <ktietz@138bc75d-0d04-0410-961f-82ee72b054a4>2012-02-20 21:22:07 +0000
commit52cec8433482a51db515990c9ae491ff66bd6111 (patch)
treec997d4cf62ddb657cffe8dc82cde004b0c3be86e /libgcc
parent7ed6dbef763f6e14352e2360c42a2d39e55b6612 (diff)
downloadgcc-52cec8433482a51db515990c9ae491ff66bd6111.tar.gz
PR libstdc++/52300
* gthr.h (GTHREAD_USE_WEAK): Define as zero for mingw. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@184406 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libgcc')
-rw-r--r--libgcc/ChangeLog3
-rw-r--r--libgcc/gthr.h8
2 files changed, 11 insertions, 0 deletions
diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog
index 87b0e9b5063..61d9b591702 100644
--- a/libgcc/ChangeLog
+++ b/libgcc/ChangeLog
@@ -1,5 +1,8 @@
2012-02-20 Kai Tietz <ktietz@redhat.com>
+ PR libstdc++/52300
+ * gthr.h (GTHREAD_USE_WEAK): Define as zero for mingw.
+
* config.host (i686-*-mingw*): Set md_unwind_header only for dw2-mode
to w32-unwind.h header.
diff --git a/libgcc/gthr.h b/libgcc/gthr.h
index 607c26eb563..03a3ee1d84f 100644
--- a/libgcc/gthr.h
+++ b/libgcc/gthr.h
@@ -135,6 +135,14 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
*/
#if SUPPORTS_WEAK
+/* The pe-coff weak support isn't fully compatible to ELF's weak.
+ For static libraries it might would work, but as we need to deal
+ with shared versions too, we disable it for mingw-targets. */
+#ifdef __MINGW32__
+#undef GTHREAD_USE_WEAK
+#define GTHREAD_USE_WEAK 0
+#endif
+
#ifndef GTHREAD_USE_WEAK
#define GTHREAD_USE_WEAK 1
#endif