This is the mail archive of the
cygwin-cvs@cygwin.com
mailing list for the Cygwin project.
[newlib-cygwin] Reinstantiate Cygwin function called `__getreent'
- From: Corinna Vinschen <corinna at sourceware dot org>
- To: cygwin-cvs at sourceware dot org
- Date: 18 Aug 2016 13:25:18 -0000
- Subject: [newlib-cygwin] Reinstantiate Cygwin function called `__getreent'
https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=6f3943bca189a934a6a04576b9a83db625a87d9f
commit 6f3943bca189a934a6a04576b9a83db625a87d9f
Author: Corinna Vinschen <corinna@vinschen.de>
Date: Thu Aug 18 14:27:05 2016 +0200
Reinstantiate Cygwin function called `__getreent'
This partially reverts commit 10a30e7 as far as the Cygwin version of
the __getreent function is concerned. Remove _COMPILING_NEWLIB guard
only allowing to use __getreent inline function when building newlib,
since we wan to use it in Cygwin as well.
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
Signed-off-by: Stefan Assmann <sassmann@redhat.com>
Diff:
---
winsup/cygwin/include/cygwin/config.h | 2 --
winsup/cygwin/thread.cc | 7 +++++++
2 files changed, 7 insertions(+), 2 deletions(-)
diff --git a/winsup/cygwin/include/cygwin/config.h b/winsup/cygwin/include/cygwin/config.h
index c09641e..46c0208 100644
--- a/winsup/cygwin/include/cygwin/config.h
+++ b/winsup/cygwin/include/cygwin/config.h
@@ -35,7 +35,6 @@ extern "C" {
compute these offsets already exists for the sake of gendef so
we might as well just use it here. */
-#ifdef _COMPILING_NEWLIB
#ifdef __x86_64__
#include "../tlsoffsets64.h"
#else
@@ -52,7 +51,6 @@ extern inline struct _reent *__getreent (void)
#endif
return (struct _reent *) (ret + tls_local_clib);
}
-#endif /* _COMPILING_NEWLIB */
#ifdef __x86_64__
# define __SYMBOL_PREFIX
diff --git a/winsup/cygwin/thread.cc b/winsup/cygwin/thread.cc
index d9271fc..4414785 100644
--- a/winsup/cygwin/thread.cc
+++ b/winsup/cygwin/thread.cc
@@ -80,6 +80,13 @@ pthread_mutex::no_owner()
return res;
}
+#undef __getreent
+extern "C" struct _reent *
+__getreent ()
+{
+ return &_my_tls.local_clib;
+}
+
extern "C" void
__cygwin_lock_init (_LOCK_T *lock)
{