From ceae3ef42a620a753d38967ae600ccf14fd77031 Mon Sep 17 00:00:00 2001 From: Sascha Wildner Date: Sun, 7 Apr 2019 18:34:48 +0200 Subject: [PATCH] libc/libpthread: Add guard to fix redundant __isthreaded declarations. --- include/stdio.h | 3 +++ lib/libc/include/libc_private.h | 3 +++ lib/libthread_xu/thread/thr_private.h | 3 ++- 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/include/stdio.h b/include/stdio.h index 92ccbe9088..c03eb013c1 100644 --- a/include/stdio.h +++ b/include/stdio.h @@ -414,7 +414,10 @@ __sfileno(FILE *_fp) return (_p->_fileno); } +#ifndef __LIBC_ISTHREADED_DECLARED +#define __LIBC_ISTHREADED_DECLARED extern int __isthreaded; +#endif #ifndef __cplusplus #define feof(p) (!__isthreaded ? __sfeof(p) : (feof)(p)) diff --git a/lib/libc/include/libc_private.h b/lib/libc/include/libc_private.h index 70152b477d..3ef52227ac 100644 --- a/lib/libc/include/libc_private.h +++ b/lib/libc/include/libc_private.h @@ -42,7 +42,10 @@ * or more threads. It is used to avoid calling locking functions * when they are not required. */ +#ifndef __LIBC_ISTHREADED_DECLARED +#define __LIBC_ISTHREADED_DECLARED extern int __isthreaded; +#endif /* * File lock contention is difficult to diagnose without knowing diff --git a/lib/libthread_xu/thread/thr_private.h b/lib/libthread_xu/thread/thr_private.h index bbf0b5068d..97b2733ad3 100644 --- a/lib/libthread_xu/thread/thr_private.h +++ b/lib/libthread_xu/thread/thr_private.h @@ -597,7 +597,8 @@ do { \ (curthr->report_events && \ (((curthr)->event_mask | _thread_event_mask ) & e) != 0) -#if !defined(_LIBC_PRIVATE_H_) && !defined(_STDIO_H_) +#ifndef __LIBC_ISTHREADED_DECLARED +#define __LIBC_ISTHREADED_DECLARED extern int __isthreaded; #endif -- 2.41.0