summaryrefslogtreecommitdiff
path: root/include/errno.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/errno.h')
-rw-r--r--include/errno.h15
1 files changed, 5 insertions, 10 deletions
diff --git a/include/errno.h b/include/errno.h
index 7df41dfc31..457114b27a 100644
--- a/include/errno.h
+++ b/include/errno.h
@@ -1,8 +1,6 @@
#ifndef _ERRNO_H
-
#include <stdlib/errno.h>
-
-#if defined _ERRNO_H && !defined _ISOMAC && !defined __cplusplus
+#if !defined _ISOMAC && !defined __ASSEMBLER__
# if IS_IN (rtld)
# include <dl-sysdep.h>
@@ -22,7 +20,7 @@
# define errno rtld_errno
extern int rtld_errno attribute_hidden;
-# elif IS_IN_LIB
+# elif IS_IN_LIB && !IS_IN (rtld)
# include <tls.h>
@@ -38,15 +36,12 @@ extern __thread int errno attribute_tls_model_ie;
# define __set_errno(val) (errno = (val))
-# ifndef __ASSEMBLER__
-extern int *__errno_location (void) __THROW __attribute__ ((__const__))
+extern int *__errno_location (void) __THROW __attribute_const__
# if RTLD_PRIVATE_ERRNO
attribute_hidden
# endif
;
libc_hidden_proto (__errno_location)
-# endif
-
-#endif /* _ERRNO_H */
-#endif /* ! _ERRNO_H */
+#endif /* !_ISOMAC && !__ASSEMBLER__ */
+#endif /* !_ERRNO_H */