diff options
-rw-r--r-- | libc/misc/internals/errno.c | 16 | ||||
-rw-r--r-- | libc/misc/internals/internal_errno.h | 2 |
2 files changed, 1 insertions, 17 deletions
diff --git a/libc/misc/internals/errno.c b/libc/misc/internals/errno.c index e584f21f8..e1b5d7e84 100644 --- a/libc/misc/internals/errno.c +++ b/libc/misc/internals/errno.c @@ -4,30 +4,14 @@ __thread int errno; __thread int h_errno; -#ifdef SHARED -/* - * FIXME: Add usage of hidden attribute for both of these when used in - * the shared library. It currently crashes the linker when doing - * section relocations. - */ extern __thread int __libc_errno __attribute__ ((alias ("errno"))); extern __thread int __libc_h_errno __attribute__ ((alias ("h_errno"))); -#else -extern __thread int __libc_errno __attribute__ ((alias ("errno"))); -extern __thread int __libc_h_errno __attribute__ ((alias ("h_errno"))); -#endif #define h_errno __libc_h_errno #else #include "internal_errno.h" -#if 0 -/* Unfortunately, this doesn't work... */ -int h_errno __attribute__ ((section (".bss"))) = 0; -int errno __attribute__ ((section (".bss"))) = 0; -#else int errno = 0; int h_errno = 0; -#endif #ifdef __UCLIBC_HAS_THREADS__ libc_hidden_def(errno) diff --git a/libc/misc/internals/internal_errno.h b/libc/misc/internals/internal_errno.h index d591dec3b..b49198579 100644 --- a/libc/misc/internals/internal_errno.h +++ b/libc/misc/internals/internal_errno.h @@ -6,7 +6,7 @@ #include <errno.h> #include <netdb.h> -#ifndef __UCLIBC_HAS_THREADS_NATIVE__ +#ifndef __UCLIBC_HAS_TLS__ #undef errno #undef h_errno |