about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog46
-rw-r--r--include/dlfcn.h3
-rw-r--r--include/libio.h3
-rw-r--r--include/obstack.h2
-rw-r--r--include/stdio.h1
-rw-r--r--include/string.h1
-rw-r--r--include/sys/stat.h1
-rw-r--r--include/unistd.h1
-rw-r--r--include/wctype.h22
-rw-r--r--libio/genops.c1
-rw-r--r--libio/wgenops.c3
-rw-r--r--malloc/obstack.c9
-rw-r--r--stdio-common/vfscanf.c1
-rw-r--r--string/strverscmp.c3
-rw-r--r--sunrpc/svc.c2
-rw-r--r--sysdeps/generic/sysconf.c3
-rw-r--r--sysdeps/generic/xmknod.c3
-rw-r--r--sysdeps/mach/hurd/xmknod.c3
-rw-r--r--sysdeps/posix/sysconf.c3
-rw-r--r--sysdeps/unix/sysv/irix4/sysconf.c3
-rw-r--r--sysdeps/unix/sysv/linux/alpha/xmknod.c3
-rw-r--r--sysdeps/unix/sysv/linux/mips/xmknod.c3
-rw-r--r--sysdeps/unix/sysv/linux/xmknod.c3
-rw-r--r--sysdeps/unix/sysv/sysv4/sysconf.c3
-rw-r--r--sysdeps/unix/xmknod.c3
-rw-r--r--wctype/iswctype.c2
-rw-r--r--wctype/wcfuncs_l.c9
27 files changed, 112 insertions, 28 deletions
diff --git a/ChangeLog b/ChangeLog
index 50b36191f6..36f9d57958 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,49 @@
+2002-08-04  Ulrich Drepper  <drepper@redhat.com>
+
+	* elf/dl-addr.c (_dl_addr): Add libc_hidden_def.
+	* elf/dl-close.c (_dl_close): Add libc_hidden_def.
+	* elf/dl-open.c (_dl_open): Add libc_hidden_def.
+	* include/dlfcn.h: Add libc_hidden_proto for _dl_addr, _dl_open,
+	_dl_close.
+
+	* include/libio.h: Add libc_hidden_proto for __underflow, __wuflow,
+	__wunderflow.
+	* libio/genops.c (__underflow): Add libc_hidden_def.
+	* libio/wgenops.c (__wuflow): Likewise.
+	(__wunderflow): Likewise.
+
+	* include/obstack.h: Add libc_hidden_proto for _obstack_newchunk.
+	* malloc/obstack.c (_obstack_newchunk): Add libc_hidden_def.
+
+	* include/stdio.h: Add libc_hidden_proto for __vfscanf.
+	* stdio-common/vfscanf.c (__vfscanf): Add libc_hidden_def.
+
+	* include/string.h: Add libc_hidden_proto for __strverscmp.
+	* string/strverscmp.c (__strverscmp): Add libc_hidden_def.
+
+	* include/unistd.h: Add libc_hidden_proto for __sysconf.
+	* sysdeps/generic/sysconf.c (__sysconf): Add libc_hidden_def.
+	* sysdeps/posix/sysconf.c: Likewise.
+	* sysdeps/unix/sysv/irix4/sysconf.c: Likewise.
+	* sysdeps/unix/sysv/sysv4/sysconf.c: Likewise.
+
+	* include/wctype.h: Use libc_hidden_proto for __iswctype, __iswalnum_l,
+	__iswalpha_l, __iswblank_l, __iswcntrl_l, __iswdigit_l, __iswlower_l,
+	__iswgraph_l, __iswprint_l, __iswpunct_l, __iswspace_l, __iswupper_l,
+	__iswxdigit_l, __towlower_l, __towupper_l.
+	* wcsmbs/wcstype.c (__iswctype): Use libc_hidden_def.
+	* wcsmbs/wcfuncs_l.c: Use libc_hidden_def for all functions.
+
+	* include/sys/wait.h: Add libc_hidden_proto for __xmknod.
+	* sysdeps/generic/xmknod.c (__xmknod): Add libc_hidden_def.
+	* sysdeps/mach/hurd/xmknod.c: Likewise.
+	* sysdeps/unix/xmknod.c: Likewise.
+	* sysdeps/unix/sysv/linux/xmknod.c: Likewise.
+	* sysdeps/unix/sysv/linux/alpha/xmknod.c: Likewise.
+	* sysdeps/unix/sysv/linux/mips/xmknod.c: Likewise.
+
+	* sunrpc/svc.c: Add missing INTUSE for _authenticate.
+
 2002-08-03  Roland McGrath  <roland@redhat.com>
 
 	* include/sys/resource.h: Use libc_hidden_proto for getpriority,
diff --git a/include/dlfcn.h b/include/dlfcn.h
index 94c8cc0de1..fca2feb458 100644
--- a/include/dlfcn.h
+++ b/include/dlfcn.h
@@ -16,16 +16,19 @@ extern int   __libc_dlclose (void *__map);
 /* Locate shared object containing the given address.  */
 extern int _dl_addr (const void *address, Dl_info *info)
      internal_function;
+libc_hidden_proto (_dl_addr)
 
 /* Open the shared object NAME, relocate it, and run its initializer if it
    hasn't already been run.  MODE is as for `dlopen' (see <dlfcn.h>).  If
    the object is already opened, returns its existing map.  */
 extern void *_dl_open (const char *name, int mode, const void *caller)
      internal_function;
+libc_hidden_proto (_dl_open)
 
 /* Close an object previously opened by _dl_open.  */
 extern void _dl_close (void *map)
      internal_function;
+libc_hidden_proto (_dl_close)
 
 /* Look up NAME in shared object HANDLE (which may be RTLD_DEFAULT or
    RTLD_NEXT).  WHO is the calling function, for RTLD_NEXT.  Returns
diff --git a/include/libio.h b/include/libio.h
index 6dc8dc8fed..a3a6518876 100644
--- a/include/libio.h
+++ b/include/libio.h
@@ -4,6 +4,9 @@
 #define _LIBC_LIBIO_H
 
 libc_hidden_proto (__overflow)
+libc_hidden_proto (__underflow)
 libc_hidden_proto (__woverflow)
+libc_hidden_proto (__wunderflow)
+libc_hidden_proto (__wuflow)
 
 #endif
diff --git a/include/obstack.h b/include/obstack.h
index 2339cbc4d5..349d59bb03 100644
--- a/include/obstack.h
+++ b/include/obstack.h
@@ -1 +1,3 @@
 #include <malloc/obstack.h>
+
+libc_hidden_proto (_obstack_newchunk)
diff --git a/include/stdio.h b/include/stdio.h
index e5228f267e..4f144d3e78 100644
--- a/include/stdio.h
+++ b/include/stdio.h
@@ -16,6 +16,7 @@ extern int __vfscanf (FILE *__restrict __s,
 		      __const char *__restrict __format,
 		      _G_va_list __arg)
      __attribute__ ((__format__ (__scanf__, 2, 0)));
+libc_hidden_proto (__vfscanf)
 extern int __vscanf (__const char *__restrict __format,
 		     _G_va_list __arg)
      __attribute__ ((__format__ (__scanf__, 1, 0)));
diff --git a/include/string.h b/include/string.h
index bc04cef812..64c59b00fb 100644
--- a/include/string.h
+++ b/include/string.h
@@ -71,3 +71,4 @@ libc_hidden_proto (__strncasecmp_l)
 libc_hidden_proto (__strdup)
 libc_hidden_proto (__strndup)
 libc_hidden_proto (__strerror_r)
+libc_hidden_proto (__strverscmp)
diff --git a/include/sys/stat.h b/include/sys/stat.h
index f24a5b5200..6dcf0d8e3a 100644
--- a/include/sys/stat.h
+++ b/include/sys/stat.h
@@ -23,6 +23,7 @@ extern __inline__ int __stat (__const char *__path, struct stat *__statbuf)
 {
   return __xstat (_STAT_VER, __path, __statbuf);
 }
+libc_hidden_proto (__xmknod)
 extern __inline__ int __mknod (__const char *__path, __mode_t __mode,
 			       __dev_t __dev)
 {
diff --git a/include/unistd.h b/include/unistd.h
index 10fd603e17..7c1c5da043 100644
--- a/include/unistd.h
+++ b/include/unistd.h
@@ -73,6 +73,7 @@ extern int __execve (__const char *__path, char *__const __argv[],
 extern long int __pathconf (__const char *__path, int __name);
 extern long int __fpathconf (int __fd, int __name);
 extern long int __sysconf (int __name);
+libc_hidden_proto (__sysconf)
 extern __pid_t __getpid (void);
 libc_hidden_proto (__getpid)
 extern __pid_t __getppid (void);
diff --git a/include/wctype.h b/include/wctype.h
index 92fc849f95..5f818decaa 100644
--- a/include/wctype.h
+++ b/include/wctype.h
@@ -17,12 +17,20 @@ extern int __iswctype_internal (wint_t __wc, wctype_t __desc) attribute_hidden;
 extern wctype_t __wctype (__const char *__property);
 extern wint_t __towctrans (wint_t __wc, wctrans_t __desc);
 
-#ifndef NOT_IN_libc
-# define __iswalpha_l(wc, loc) INTUSE(__iswalpha_l) (wc, loc)
-# define __iswctype(wc, desc) INTUSE(__iswctype) (wc, desc)
-# define __iswdigit_l(wc, loc) INTUSE(__iswdigit_l) (wc, loc)
-# define __iswspace_l(wc, loc) INTUSE(__iswspace_l) (wc, loc)
-# define __iswxdigit_l(wc, loc) INTUSE(__iswxdigit_l) (wc, loc)
-#endif
+libc_hidden_proto (__iswctype)
+libc_hidden_proto (__iswalnum_l)
+libc_hidden_proto (__iswalpha_l)
+libc_hidden_proto (__iswblank_l)
+libc_hidden_proto (__iswcntrl_l)
+libc_hidden_proto (__iswdigit_l)
+libc_hidden_proto (__iswlower_l)
+libc_hidden_proto (__iswgraph_l)
+libc_hidden_proto (__iswprint_l)
+libc_hidden_proto (__iswpunct_l)
+libc_hidden_proto (__iswspace_l)
+libc_hidden_proto (__iswupper_l)
+libc_hidden_proto (__iswxdigit_l)
+libc_hidden_proto (__towlower_l)
+libc_hidden_proto (__towupper_l)
 
 #endif
diff --git a/libio/genops.c b/libio/genops.c
index e0ea74dd5b..eb03664b80 100644
--- a/libio/genops.c
+++ b/libio/genops.c
@@ -350,6 +350,7 @@ __underflow (fp)
     INTUSE(_IO_free_backup_area) (fp);
   return _IO_UNDERFLOW (fp);
 }
+libc_hidden_def (__underflow)
 
 int
 __uflow (fp)
diff --git a/libio/wgenops.c b/libio/wgenops.c
index 2b65af1e76..1eb9fb26c9 100644
--- a/libio/wgenops.c
+++ b/libio/wgenops.c
@@ -278,7 +278,7 @@ __wuflow (fp)
     INTUSE(_IO_free_wbackup_area) (fp);
   return _IO_UFLOW (fp);
 }
-
+libc_hidden_def (__wuflow)
 
 wint_t
 __wunderflow (fp)
@@ -309,6 +309,7 @@ __wunderflow (fp)
     INTUSE(_IO_free_wbackup_area) (fp);
   return _IO_UNDERFLOW (fp);
 }
+libc_hidden_def (__wunderflow)
 
 
 _IO_size_t
diff --git a/malloc/obstack.c b/malloc/obstack.c
index 0244da3839..63e4b8064b 100644
--- a/malloc/obstack.c
+++ b/malloc/obstack.c
@@ -1,5 +1,5 @@
 /* obstack.c - subroutines used implicitly by object stack macros
-   Copyright (C) 1988-1994,96,97,98,99,2000,2001 Free Software Foundation, Inc.
+   Copyright (C) 1988-1994, 1996-2001, 2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.  Its master source is NOT part of
    the C library, however.  The master source lives in /gd/gnu/lib.
 
@@ -22,7 +22,11 @@
 # include <config.h>
 #endif
 
+#ifdef _LIBC
+#include <obstack.h>
+#else
 #include "obstack.h"
+#endif
 
 /* NOTE BEFORE MODIFYING THIS FILE: This version number must be
    incremented whenever callers compiled using an old obstack.h can no
@@ -338,6 +342,9 @@ _obstack_newchunk (h, length)
   /* The new chunk certainly contains no empty object yet.  */
   h->maybe_empty_object = 0;
 }
+#ifdef _LIBC
+libc_hidden_def (_obstack_newchunk)
+#endif
 
 /* Return nonzero if object OBJ has been allocated from obstack H.
    This is here for debugging.
diff --git a/stdio-common/vfscanf.c b/stdio-common/vfscanf.c
index b563a04b38..f607fb4739 100644
--- a/stdio-common/vfscanf.c
+++ b/stdio-common/vfscanf.c
@@ -2441,6 +2441,7 @@ __vfscanf (FILE *s, const char *format, va_list argptr)
 {
   return INTUSE(_IO_vfscanf) (s, format, argptr, NULL);
 }
+libc_hidden_def (__vfscanf)
 # endif
 #endif
 
diff --git a/string/strverscmp.c b/string/strverscmp.c
index 488f35674f..8efac30383 100644
--- a/string/strverscmp.c
+++ b/string/strverscmp.c
@@ -1,5 +1,5 @@
 /* Compare strings while treating digits characters numerically.
-   Copyright (C) 1997 Free Software Foundation, Inc.
+   Copyright (C) 1997, 2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Jean-François Bignolles <bignolle@ecoledoc.ibp.fr>, 1997.
 
@@ -109,4 +109,5 @@ __strverscmp (s1, s2)
       return state;
   }
 }
+libc_hidden_def (__strverscmp)
 weak_alias (__strverscmp, strverscmp)
diff --git a/sunrpc/svc.c b/sunrpc/svc.c
index 932813b1c6..f3f46c7efe 100644
--- a/sunrpc/svc.c
+++ b/sunrpc/svc.c
@@ -438,7 +438,7 @@ svc_getreq_common (const int fd)
 	      r.rq_xprt->xp_verf.oa_flavor = _null_auth.oa_flavor;
 	      r.rq_xprt->xp_verf.oa_length = 0;
 	    }
-	  else if ((why = _authenticate (&r, &msg)) != AUTH_OK)
+	  else if ((why = INTUSE(_authenticate) (&r, &msg)) != AUTH_OK)
 	    {
 	      svcerr_auth (xprt, why);
 	      goto call_done;
diff --git a/sysdeps/generic/sysconf.c b/sysdeps/generic/sysconf.c
index 8816ddc682..f1b64d58eb 100644
--- a/sysdeps/generic/sysconf.c
+++ b/sysdeps/generic/sysconf.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991,1993,1995,1996,1997,2001 Free Software Foundation, Inc.
+/* Copyright (C) 1991,1993,1995-1997,2001,2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -260,6 +260,7 @@ __sysconf (name)
 }
 
 weak_alias (__sysconf, sysconf)
+libc_hidden_def (__sysconf)
 
 stub_warning (sysconf)
 #include <stub-tag.h>
diff --git a/sysdeps/generic/xmknod.c b/sysdeps/generic/xmknod.c
index e42fbb3549..57ed46060d 100644
--- a/sysdeps/generic/xmknod.c
+++ b/sysdeps/generic/xmknod.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 1993, 1995, 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1991,1993,1995,1996,1997,2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -38,4 +38,5 @@ __xmknod (int vers, const char *path, mode_t mode, dev_t *dev)
 stub_warning (__xmknod)
 
 weak_alias (__xmknod, _xmknod)
+libc_hidden_def (__xmknod)
 #include <stub-tag.h>
diff --git a/sysdeps/mach/hurd/xmknod.c b/sysdeps/mach/hurd/xmknod.c
index c9f2e268c9..2989215d9c 100644
--- a/sysdeps/mach/hurd/xmknod.c
+++ b/sysdeps/mach/hurd/xmknod.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 92, 93, 94, 95, 96, 99 Free Software Foundation, Inc.
+/* Copyright (C) 1991,92,93,94,95,96,99,2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -108,3 +108,4 @@ __xmknod (int vers, const char *file_name, mode_t mode, dev_t *dev)
     return __hurd_fail (err);
   return 0;
 }
+libc_hidden_def (__xmknod)
diff --git a/sysdeps/posix/sysconf.c b/sysdeps/posix/sysconf.c
index 05a9538271..3804aa1061 100644
--- a/sysdeps/posix/sysconf.c
+++ b/sysdeps/posix/sysconf.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991,93,95,96,97,99,2000,2001 Free Software Foundation, Inc.
+/* Copyright (C) 1991,93,1995-1997,1999-2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -1128,3 +1128,4 @@ __sysconf (name)
 
 #undef __sysconf
 weak_alias (__sysconf, sysconf)
+libc_hidden_def (__sysconf)
diff --git a/sysdeps/unix/sysv/irix4/sysconf.c b/sysdeps/unix/sysv/irix4/sysconf.c
index 3f350b5cb2..2f89491fda 100644
--- a/sysdeps/unix/sysv/irix4/sysconf.c
+++ b/sysdeps/unix/sysv/irix4/sysconf.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1994, 1995, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1994, 1995, 1997, 2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -33,3 +33,4 @@ __sysconf (name)
 }
 
 weak_alias (__sysconf, sysconf)
+libc_hidden_def (__sysconf)
diff --git a/sysdeps/unix/sysv/linux/alpha/xmknod.c b/sysdeps/unix/sysv/linux/alpha/xmknod.c
index a659c1f5ce..d7e8d2a0a8 100644
--- a/sysdeps/unix/sysv/linux/alpha/xmknod.c
+++ b/sysdeps/unix/sysv/linux/alpha/xmknod.c
@@ -1,5 +1,5 @@
 /* xmknod call using old-style Unix mknod system call.
-   Copyright (C) 1991, 1993, 1995, 1996, 1997 Free Software Foundation, Inc.
+   Copyright (C) 1991,1993,1995,1996,1997,2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -45,3 +45,4 @@ __xmknod (int vers, const char *path, mode_t mode, dev_t *dev)
 }
 
 weak_alias (__xmknod, _xmknod)
+libc_hidden_def (__xmknod)
diff --git a/sysdeps/unix/sysv/linux/mips/xmknod.c b/sysdeps/unix/sysv/linux/mips/xmknod.c
index d2a02f512b..217c9c2111 100644
--- a/sysdeps/unix/sysv/linux/mips/xmknod.c
+++ b/sysdeps/unix/sysv/linux/mips/xmknod.c
@@ -1,5 +1,5 @@
 /* xmknod call using old-style Unix mknod system call.
-   Copyright (C) 1991, 93, 95, 96, 97, 98, 00 Free Software Foundation, Inc.
+   Copyright (C) 1991,93,95,96,97,98,00,2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -49,3 +49,4 @@ __xmknod (int vers, const char *path, mode_t mode, dev_t *dev)
 }
 
 weak_alias (__xmknod, _xmknod)
+libc_hidden_def (__xmknod)
diff --git a/sysdeps/unix/sysv/linux/xmknod.c b/sysdeps/unix/sysv/linux/xmknod.c
index d8e5013ae2..e79d0e3149 100644
--- a/sysdeps/unix/sysv/linux/xmknod.c
+++ b/sysdeps/unix/sysv/linux/xmknod.c
@@ -1,5 +1,5 @@
 /* xmknod call using old-style Unix mknod system call.
-   Copyright (C) 1991, 93, 95, 96, 97, 98, 2000 Free Software Foundation, Inc.
+   Copyright (C) 1991,93,95,96,97,98,2000,2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -50,3 +50,4 @@ __xmknod (int vers, const char *path, mode_t mode, dev_t *dev)
 }
 
 weak_alias (__xmknod, _xmknod)
+libc_hidden_def (__xmknod)
diff --git a/sysdeps/unix/sysv/sysv4/sysconf.c b/sysdeps/unix/sysv/sysv4/sysconf.c
index 77ce2d87d4..d8ffafcc41 100644
--- a/sysdeps/unix/sysv/sysv4/sysconf.c
+++ b/sysdeps/unix/sysv/sysv4/sysconf.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1993, 1995, 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1993, 1995, 1996, 1997, 2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Brendan Kehoe (brendan@zen.org).
 
@@ -363,3 +363,4 @@ __sysconf (name)
 }
 
 weak_alias (__sysconf, sysconf)
+libc_hidden_def (__sysconf)
diff --git a/sysdeps/unix/xmknod.c b/sysdeps/unix/xmknod.c
index 9ce2f9c333..92f420f726 100644
--- a/sysdeps/unix/xmknod.c
+++ b/sysdeps/unix/xmknod.c
@@ -1,5 +1,5 @@
 /* xmknod call using old-style Unix mknod system call.
-   Copyright (C) 1991, 1993, 1995, 1996, 1997 Free Software Foundation, Inc.
+   Copyright (C) 1991,1993,1995,1996,1997,2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -39,3 +39,4 @@ __xmknod (int vers, const char *path, mode_t mode, dev_t *dev)
 }
 
 weak_alias (__xmknod, _xmknod)
+libc_hidden_def (__xmknod)
diff --git a/wctype/iswctype.c b/wctype/iswctype.c
index 9a13861a8b..567b9f4fbb 100644
--- a/wctype/iswctype.c
+++ b/wctype/iswctype.c
@@ -34,5 +34,5 @@ __iswctype (wint_t wc, wctype_t desc)
 
   return wctype_table_lookup ((const char *) desc, wc);
 }
-INTDEF(__iswctype)
+libc_hidden_def (__iswctype)
 weak_alias (__iswctype, iswctype)
diff --git a/wctype/wcfuncs_l.c b/wctype/wcfuncs_l.c
index ff85b9814c..df6b9dfd43 100644
--- a/wctype/wcfuncs_l.c
+++ b/wctype/wcfuncs_l.c
@@ -24,11 +24,6 @@
 #define USE_IN_EXTENDED_LOCALE_MODEL
 #include "wchar-lookup.h"
 
-#undef __iswalpha_l
-#undef __iswdigit_l
-#undef __iswspace_l
-#undef __iswxdigit_l
-
 /* Provide real-function versions of all the wctype macros.  */
 
 #define	func(name, type) \
@@ -38,7 +33,7 @@
     const char *desc = locale->__locales[LC_CTYPE]->values[i].string;	      \
     return wctype_table_lookup (desc, wc);				      \
   }									      \
-  INTDEF(name)
+  libc_hidden_def (name)
 
 func (__iswalnum_l, __ISwalnum)
 func (__iswalpha_l, __ISwalpha)
@@ -60,6 +55,7 @@ wint_t
   const char *desc = locale->__locales[LC_CTYPE]->values[i].string;
   return wctrans_table_lookup (desc, wc);
 }
+libc_hidden_def (__towlower_l)
 
 wint_t
 (__towupper_l) (wint_t wc, __locale_t locale)
@@ -68,3 +64,4 @@ wint_t
   const char *desc = locale->__locales[LC_CTYPE]->values[i].string;
   return wctrans_table_lookup (desc, wc);
 }
+libc_hidden_def (__towupper_l)