This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug libstdc++/31117] c++locale.o thread-unsafe in libstdc++
- From: "pcarlini at suse dot de" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 15 Mar 2007 12:05:12 -0000
- Subject: [Bug libstdc++/31117] c++locale.o thread-unsafe in libstdc++
- References: <bug-31117-9156@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #15 from pcarlini at suse dot de 2007-03-15 12:05 -------
(In reply to comment #13)
> Exactly which CPP symbol: On this platform, to select the errno function,
> /usr/include/errno.h requires
>
> defined(_REENTRANT) || defined(_TS_ERRNO) || _POSIX_C_SOURCE - 0 >=
> 199506L
Actually, I would concentrate on _TS_ERRNO (thread-safe errno, that is?)
Strikes me as the most minimal and safe change, we could simply add the define
to config/os/solaris/solaris2.7/os_defines.h. Can you try this change? Then, if
everything goes well, we have to find out something similar for the other
problematic targets...
Index: config/os/solaris/solaris2.7/os_defines.h
===================================================================
--- config/os/solaris/solaris2.7/os_defines.h (revision 122953)
+++ config/os/solaris/solaris2.7/os_defines.h (working copy)
@@ -33,5 +33,8 @@
// System-specific #define, typedefs, corrections, etc, go here. This
// file will come before all others.
+// See libstdc++/31117 for details
+#define _TS_ERRNO
+
#endif
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31117