OSDN Git Service

weak symbols need to be "defined" weak but "declared" strong
[uclinux-h8/uClibc.git] / libc / misc / internals / __h_errno_location.c
index f4a587e..c510c81 100644 (file)
@@ -4,11 +4,15 @@
  * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
  */
 
-#include "internal_errno.h"
+#include <features.h>
+#include <netdb.h>
 
-/* libc_hidden_proto(__h_errno_location) */
-int * weak_const_function __h_errno_location (void)
+#ifndef __UCLIBC_HAS_TLS__
+# undef h_errno
+extern int h_errno;
+#endif
+
+int weak_const_function *__h_errno_location(void)
 {
     return &h_errno;
 }
-libc_hidden_weak(__h_errno_location)