[PATCH v2 03/11] Declare global __sf[] only once

Matthew Joyce matthew.joyce@embedded-brains.de
Thu May 12 12:11:35 GMT 2022


From: Sebastian Huber <sebastian.huber@embedded-brains.de>

Reduced number of global __sf[] declarations from two to one,
simplifying initializations in sys/reent.h.
---
 newlib/libc/include/sys/reent.h | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/newlib/libc/include/sys/reent.h b/newlib/libc/include/sys/reent.h
index 4bc78a447..e0b0ccffb 100644
--- a/newlib/libc/include/sys/reent.h
+++ b/newlib/libc/include/sys/reent.h
@@ -293,6 +293,10 @@ typedef struct __sFILE   __FILE;
 #endif /* __LARGE64_FILES */
 #endif /* !__CUSTOM_FILE_IO__ */
 
+#ifdef _REENT_GLOBAL_STDIO_STREAMS
+extern __FILE __sf[3];
+#endif
+
 struct _glue
 {
   struct _glue *_next;
@@ -426,7 +430,6 @@ struct _reent
 };
 
 #ifdef _REENT_GLOBAL_STDIO_STREAMS
-extern __FILE __sf[3];
 
 # define _REENT_INIT(var) \
   { 0, \
@@ -698,7 +701,6 @@ struct _reent
 };
 
 #ifdef _REENT_GLOBAL_STDIO_STREAMS
-extern __FILE __sf[3];
 #define _REENT_STDIO_STREAM(var, index) &__sf[index]
 #else
 #define _REENT_STDIO_STREAM(var, index) &(var)->__sf[index]
-- 
2.31.1



More information about the Newlib mailing list