[2/3] Reentrancy, conditionally provide default __getreent() implementation

Message ID 482bc37e7c7cdb7830996d6ae52fe8ca@sourceware.mail.kapsi.fi
State New
Headers
Series Reentrancy |

Commit Message

Pekka Seppänen Aug. 30, 2023, 9:16 a.m. UTC
  Conditionally provide default __getreent() implementation only if
_REENT_THREAD_LOCAL is not defined.  If struct _reent is replaced by
dedicated thread-local objects neither the structure nor _impure_ptr is
available.
---
  newlib/libc/reent/getreent.c | 4 ++++
  1 file changed, 4 insertions(+)
  

Patch

diff --git a/newlib/libc/reent/getreent.c b/newlib/libc/reent/getreent.c
index 5fa98e96b..86bb04fb9 100644
--- a/newlib/libc/reent/getreent.c
+++ b/newlib/libc/reent/getreent.c
@@ -9,6 +9,8 @@  int _dummy_getreent;
  #include <_ansi.h>
  #include <reent.h>

+#ifndef _REENT_THREAD_LOCAL
+
  #ifdef __getreent
  #undef __getreent
  #endif
@@ -19,4 +21,6 @@  __getreent (void)
    return _impure_ptr;
  }

+#endif /* !_REENT_THREAD_LOCAL */
+
  #endif