summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/string.h121
-rw-r--r--include/strings.h22
-rw-r--r--libc/inet/addr.c2
-rw-r--r--libc/inet/getaddrinfo.c10
-rw-r--r--libc/inet/getnetbynm.c2
-rw-r--r--libc/inet/getproto.c4
-rw-r--r--libc/inet/getservice.c4
-rw-r--r--libc/inet/hostid.c2
-rw-r--r--libc/inet/if_index.c6
-rw-r--r--libc/inet/ifaddrs.c4
-rw-r--r--libc/inet/ntop.c10
-rw-r--r--libc/inet/resolv.c24
-rw-r--r--libc/inet/rpc/auth_unix.c2
-rw-r--r--libc/inet/rpc/bindresvport.c2
-rw-r--r--libc/inet/rpc/clnt_generic.c8
-rw-r--r--libc/inet/rpc/clnt_perror.c4
-rw-r--r--libc/inet/rpc/clnt_simple.c6
-rw-r--r--libc/inet/rpc/clnt_udp.c2
-rw-r--r--libc/inet/rpc/clnt_unix.c4
-rw-r--r--libc/inet/rpc/getrpcent.c10
-rw-r--r--libc/inet/rpc/getrpcport.c2
-rw-r--r--libc/inet/rpc/pmap_rmt.c2
-rw-r--r--libc/inet/rpc/rcmd.c16
-rw-r--r--libc/inet/rpc/rexec.c6
-rw-r--r--libc/inet/rpc/rpc_cmsg.c2
-rw-r--r--libc/inet/rpc/ruserpass.c14
-rw-r--r--libc/inet/rpc/svc.c2
-rw-r--r--libc/inet/rpc/svc_authux.c2
-rw-r--r--libc/inet/rpc/svc_simple.c4
-rw-r--r--libc/inet/rpc/svc_tcp.c4
-rw-r--r--libc/inet/rpc/svc_udp.c6
-rw-r--r--libc/inet/rpc/svc_unix.c6
-rw-r--r--libc/inet/rpc/xdr.c2
-rw-r--r--libc/inet/rpc/xdr_array.c2
-rw-r--r--libc/inet/rpc/xdr_mem.c2
-rw-r--r--libc/inet/rpc/xdr_rec.c2
-rw-r--r--libc/inet/rpc/xdr_reference.c2
-rw-r--r--libc/misc/dirent/alphasort.c2
-rw-r--r--libc/misc/dirent/alphasort64.c2
-rw-r--r--libc/misc/dirent/readdir64_r.c2
-rw-r--r--libc/misc/dirent/readdir_r.c2
-rw-r--r--libc/misc/dirent/scandir.c2
-rw-r--r--libc/misc/dirent/scandir64.c2
-rw-r--r--libc/misc/error/error.c4
-rw-r--r--libc/misc/file/lockf.c2
-rw-r--r--libc/misc/file/lockf64.c2
-rw-r--r--libc/misc/fnmatch/fnmatch.c14
-rw-r--r--libc/misc/ftw/ftw.c10
-rw-r--r--libc/misc/glob/glob-susv3.c12
-rw-r--r--libc/misc/glob/glob.c16
-rw-r--r--libc/misc/internals/__uClibc_main.c4
-rw-r--r--libc/misc/internals/tempname.c4
-rw-r--r--libc/misc/locale/locale.c20
-rw-r--r--libc/misc/mntent/mntent.c4
-rw-r--r--libc/misc/regex/regex.c20
-rw-r--r--libc/misc/regex/regex_old.c12
-rw-r--r--libc/misc/search/_hsearch_r.c4
-rw-r--r--libc/misc/search/_lsearch.c2
-rw-r--r--libc/misc/statfs/fstatfs64.c2
-rw-r--r--libc/misc/statfs/fstatvfs.c6
-rw-r--r--libc/misc/statfs/fstatvfs64.c6
-rw-r--r--libc/misc/statfs/statfs64.c2
-rw-r--r--libc/misc/statfs/statvfs.c6
-rw-r--r--libc/misc/statfs/statvfs64.c6
-rw-r--r--libc/misc/syslog/syslog.c12
-rw-r--r--libc/misc/time/time.c18
-rw-r--r--libc/misc/ttyent/getttyent.c6
-rw-r--r--libc/misc/utmp/utent.c6
-rw-r--r--libc/misc/utmp/wtent.c4
-rw-r--r--libc/misc/wchar/wchar.c2
-rw-r--r--libc/misc/wctype/_wctype.c2
-rw-r--r--libc/misc/wordexp/wordexp.c18
-rw-r--r--libc/pwd_grp/lckpwdf.c2
-rw-r--r--libc/pwd_grp/pwd_grp.c8
-rw-r--r--libc/signal/sigaction.c2
-rw-r--r--libc/signal/sigempty.c2
-rw-r--r--libc/signal/sigfillset.c2
-rw-r--r--libc/stdio/_fpmaxtostr.c2
-rw-r--r--libc/stdio/_fwrite.c6
-rw-r--r--libc/stdio/_scanf.c8
-rw-r--r--libc/stdio/_stdio.c2
-rw-r--r--libc/stdio/_uintmaxtostr.c2
-rw-r--r--libc/stdio/_vfprintf.c8
-rw-r--r--libc/stdio/ctermid.c2
-rw-r--r--libc/stdio/fmemopen.c2
-rw-r--r--libc/stdio/fputs.c2
-rw-r--r--libc/stdio/fread.c2
-rw-r--r--libc/stdio/old_vfprintf.c6
-rw-r--r--libc/stdio/open_memstream.c4
-rw-r--r--libc/stdio/tempnam.c2
-rw-r--r--libc/stdio/tmpnam.c2
-rw-r--r--libc/stdlib/_strtod.c2
-rw-r--r--libc/stdlib/abort.c2
-rw-r--r--libc/stdlib/bsd_getpt.c2
-rw-r--r--libc/stdlib/getenv.c4
-rw-r--r--libc/stdlib/malloc-simple/alloc.c2
-rw-r--r--libc/stdlib/malloc-standard/calloc.c2
-rw-r--r--libc/stdlib/malloc-standard/realloc.c2
-rw-r--r--libc/stdlib/malloc/calloc.c2
-rw-r--r--libc/stdlib/malloc/realloc.c2
-rw-r--r--libc/stdlib/ptsname.c6
-rw-r--r--libc/stdlib/realpath.c6
-rw-r--r--libc/stdlib/seed48_r.c2
-rw-r--r--libc/stdlib/setenv.c10
-rw-r--r--libc/stdlib/unix_grantpt.c2
-rw-r--r--libc/string/__xpg_strerror_r.c4
-rw-r--r--libc/string/_collate.c8
-rw-r--r--libc/string/basename.c2
-rw-r--r--libc/string/bcopy.c2
-rw-r--r--libc/string/bzero.c2
-rw-r--r--libc/string/cris/memcpy.c2
-rw-r--r--libc/string/cris/memmove.c2
-rw-r--r--libc/string/cris/memset.c2
-rw-r--r--libc/string/cris/strcpy.c2
-rw-r--r--libc/string/cris/strncpy.c4
-rw-r--r--libc/string/ffs.c2
-rw-r--r--libc/string/frv/memset.S2
-rw-r--r--libc/string/generic/memchr.c2
-rw-r--r--libc/string/generic/memcmp.c2
-rw-r--r--libc/string/generic/memcpy.c2
-rw-r--r--libc/string/generic/memmem.c4
-rw-r--r--libc/string/generic/memmove.c4
-rw-r--r--libc/string/generic/mempcpy.c4
-rw-r--r--libc/string/generic/memrchr.c2
-rw-r--r--libc/string/generic/memset.c2
-rw-r--r--libc/string/generic/rawmemchr.c2
-rw-r--r--libc/string/generic/strcat.c2
-rw-r--r--libc/string/generic/strchr.c2
-rw-r--r--libc/string/generic/strchrnul.c2
-rw-r--r--libc/string/generic/strcmp.c4
-rw-r--r--libc/string/generic/strcpy.c2
-rw-r--r--libc/string/generic/strcspn.c4
-rw-r--r--libc/string/generic/strlen.c2
-rw-r--r--libc/string/generic/strncat.c2
-rw-r--r--libc/string/generic/strncmp.c2
-rw-r--r--libc/string/generic/strncpy.c2
-rw-r--r--libc/string/generic/strnlen.c2
-rw-r--r--libc/string/generic/strrchr.c4
-rw-r--r--libc/string/generic/strsep.c6
-rw-r--r--libc/string/generic/strspn.c2
-rw-r--r--libc/string/generic/strstr.c2
-rw-r--r--libc/string/generic/strtok_r.c10
-rw-r--r--libc/string/i386/memchr.c2
-rw-r--r--libc/string/i386/memcpy.c2
-rw-r--r--libc/string/i386/memmove.c2
-rw-r--r--libc/string/i386/memset.c2
-rw-r--r--libc/string/i386/strcat.c2
-rw-r--r--libc/string/i386/strchr.c2
-rw-r--r--libc/string/i386/strcmp.c4
-rw-r--r--libc/string/i386/strcpy.c2
-rw-r--r--libc/string/i386/strlen.c2
-rw-r--r--libc/string/i386/strncat.c2
-rw-r--r--libc/string/i386/strncmp.c2
-rw-r--r--libc/string/i386/strncpy.c2
-rw-r--r--libc/string/i386/strnlen.c2
-rw-r--r--libc/string/i386/strrchr.c2
-rw-r--r--libc/string/memcmp.c2
-rw-r--r--libc/string/memmem.c2
-rw-r--r--libc/string/memmove.c2
-rw-r--r--libc/string/memrchr.c2
-rw-r--r--libc/string/memset.c2
-rw-r--r--libc/string/powerpc/memcpy.c2
-rw-r--r--libc/string/powerpc/memmove.c4
-rw-r--r--libc/string/powerpc/memset.c2
-rw-r--r--libc/string/psignal.c2
-rw-r--r--libc/string/rawmemchr.c2
-rw-r--r--libc/string/stpcpy.c2
-rw-r--r--libc/string/stpncpy.c2
-rw-r--r--libc/string/strcasecmp.c4
-rw-r--r--libc/string/strcasestr.c1
-rw-r--r--libc/string/strcspn.c2
-rw-r--r--libc/string/strdup.c6
-rw-r--r--libc/string/strerror.c2
-rw-r--r--libc/string/strlcpy.c4
-rw-r--r--libc/string/strncasecmp.c4
-rw-r--r--libc/string/strncat.c2
-rw-r--r--libc/string/strncmp.c2
-rw-r--r--libc/string/strncpy.c2
-rw-r--r--libc/string/strndup.c6
-rw-r--r--libc/string/strrchr.c2
-rw-r--r--libc/string/strsep.c6
-rw-r--r--libc/string/strsignal.c4
-rw-r--r--libc/string/strstr.c2
-rw-r--r--libc/string/strtok.c3
-rw-r--r--libc/string/strtok_r.c6
-rw-r--r--libc/sysdeps/linux/arm/aeabi_memclr.c2
-rw-r--r--libc/sysdeps/linux/arm/aeabi_memcpy.c2
-rw-r--r--libc/sysdeps/linux/arm/aeabi_memmove.c2
-rw-r--r--libc/sysdeps/linux/arm/aeabi_memset.c2
-rw-r--r--libc/sysdeps/linux/arm/ioperm.c2
-rw-r--r--libc/sysdeps/linux/arm/sigaction.c2
-rw-r--r--libc/sysdeps/linux/avr32/sigaction.c2
-rw-r--r--libc/sysdeps/linux/common/getcwd.c8
-rw-r--r--libc/sysdeps/linux/common/getdents.c4
-rw-r--r--libc/sysdeps/linux/common/getdents64.c2
-rw-r--r--libc/sysdeps/linux/common/getdirname.c2
-rw-r--r--libc/sysdeps/linux/common/getdnnm.c4
-rw-r--r--libc/sysdeps/linux/common/gethstnm.c4
-rw-r--r--libc/sysdeps/linux/common/poll.c4
-rw-r--r--libc/sysdeps/linux/common/sched_getaffinity.c2
-rw-r--r--libc/sysdeps/linux/common/sigqueue.c2
-rw-r--r--libc/sysdeps/linux/common/ssp.c4
-rw-r--r--libc/sysdeps/linux/common/xstatconv.c2
-rw-r--r--libc/sysdeps/linux/i386/sigaction.c2
-rw-r--r--libc/sysdeps/linux/mips/sigaction.c2
-rw-r--r--libc/sysdeps/linux/x86_64/sigaction.c2
-rw-r--r--libc/sysdeps/linux/xtensa/sigaction.c2
-rw-r--r--libc/termios/tcgetattr.c6
-rw-r--r--libc/termios/tcsetattr.c2
-rw-r--r--libc/termios/ttyname.c4
-rw-r--r--libc/unistd/confstr.c2
-rw-r--r--libc/unistd/exec.c8
-rw-r--r--libc/unistd/getlogin.c4
-rw-r--r--libc/unistd/getopt-susv3.c2
-rw-r--r--libc/unistd/getopt.c8
-rw-r--r--libc/unistd/getpass.c2
-rw-r--r--libc/unistd/getsubopt-susv3.c6
-rw-r--r--libc/unistd/getsubopt.c6
-rw-r--r--libpthread/linuxthreads.old/libc_pthread_init.c2
-rw-r--r--libpthread/linuxthreads/libc_pthread_init.c2
220 files changed, 578 insertions, 433 deletions
diff --git a/include/string.h b/include/string.h
index 87d953449..cd57de1a5 100644
--- a/include/string.h
+++ b/include/string.h
@@ -434,4 +434,125 @@ extern size_t strlcpy(char *__restrict dst, const char *__restrict src,
__END_DECLS
+
+#ifdef UCLIBC_INTERNAL
+/* In the same order and with the same defines */
+libc_hidden_proto(memcpy)
+libc_hidden_proto(memmove)
+#if defined __USE_SVID || defined __USE_BSD || defined __USE_XOPEN
+libc_hidden_proto(memccpy)
+#endif /* SVID. */
+libc_hidden_proto(memset)
+libc_hidden_proto(memcmp)
+libc_hidden_proto(memchr)
+#ifdef __USE_GNU
+libc_hidden_proto(rawmemchr)
+libc_hidden_proto(memrchr)
+#endif
+libc_hidden_proto(strcpy)
+libc_hidden_proto(strncpy)
+libc_hidden_proto(strcat)
+libc_hidden_proto(strncat)
+libc_hidden_proto(strcmp)
+libc_hidden_proto(strncmp)
+libc_hidden_proto(strcoll)
+libc_hidden_proto(strxfrm)
+#if defined __USE_GNU && defined __UCLIBC_HAS_XLOCALE__
+libc_hidden_proto(strcoll_l)
+libc_hidden_proto(strxfrm_l)
+#endif
+#if defined __USE_SVID || defined __USE_BSD || defined __USE_XOPEN_EXTENDED
+libc_hidden_proto(strdup)
+#endif
+#if defined __USE_GNU
+libc_hidden_proto(strndup)
+#endif
+libc_hidden_proto(strchr)
+libc_hidden_proto(strrchr)
+#ifdef __USE_GNU
+libc_hidden_proto(strchrnul)
+#endif
+libc_hidden_proto(strcspn)
+libc_hidden_proto(strspn)
+libc_hidden_proto(strpbrk)
+libc_hidden_proto(strstr)
+libc_hidden_proto(strtok)
+#if 0 /* uClibc: disabled */
+libc_hidden_proto(__strtok_r)
+#endif
+#if defined __USE_POSIX || defined __USE_MISC
+libc_hidden_proto(strtok_r)
+#endif
+#ifdef __USE_GNU
+libc_hidden_proto(strcasestr)
+#endif
+#ifdef __USE_GNU
+libc_hidden_proto(memmem)
+#if 0 /* uClibc: disabled */
+libc_hidden_proto(__mempcpy)
+#endif
+libc_hidden_proto(mempcpy)
+#endif
+libc_hidden_proto(strlen)
+#ifdef __USE_GNU
+libc_hidden_proto(strnlen)
+#endif
+libc_hidden_proto(strerror)
+/* TODO: insert strerror_r mess here */
+#if 0 /* uClibc: disabled */
+libc_hidden_proto(__bzero)
+#endif
+#ifdef __USE_BSD
+# ifdef __UCLIBC_SUSV3_LEGACY__
+libc_hidden_proto(bcopy)
+libc_hidden_proto(bzero)
+libc_hidden_proto(bcmp)
+libc_hidden_proto(index)
+libc_hidden_proto(rindex)
+# endif
+libc_hidden_proto(ffs)
+#if 0 /*def __USE_GNU*/
+libc_hidden_proto(ffsl)
+# ifdef __GNUC__
+libc_hidden_proto(ffsll)
+# endif
+# endif
+libc_hidden_proto(strcasecmp)
+libc_hidden_proto(strncasecmp)
+#endif /* Use BSD. */
+#if defined __USE_GNU && defined __UCLIBC_HAS_XLOCALE__
+libc_hidden_proto(strcasecmp_l)
+libc_hidden_proto(strncasecmp_l)
+#endif
+#ifdef __USE_BSD
+libc_hidden_proto(strsep)
+#endif
+#ifdef __USE_GNU
+#if 0
+libc_hidden_proto(strverscmp)
+#endif
+libc_hidden_proto(strsignal)
+#if 0 /* uClibc: disabled */
+libc_hidden_proto(__stpcpy)
+#endif
+libc_hidden_proto(stpcpy)
+#if 0 /* uClibc: disabled */
+libc_hidden_proto(__stpncpy)
+#endif
+libc_hidden_proto(stpncpy)
+#if 0 /* uClibc does not support strfry or memfrob. */
+libc_hidden_proto(strfry)
+libc_hidden_proto(memfrob)
+#endif
+# ifndef basename
+libc_hidden_proto(basename)
+# endif
+#endif
+#ifdef __USE_BSD
+libc_hidden_proto(strlcat)
+libc_hidden_proto(strlcpy)
+#endif
+#endif
+
+
#endif /* string.h */
diff --git a/include/strings.h b/include/strings.h
index 107c53a4f..89349f94d 100644
--- a/include/strings.h
+++ b/include/strings.h
@@ -90,6 +90,28 @@ extern int strncasecmp (__const char *__s1, __const char *__s2, size_t __n)
__END_DECLS
+
+#ifdef UCLIBC_INTERNAL
+/* In the same order and with the same defines */
+# ifdef __UCLIBC_SUSV3_LEGACY__
+libc_hidden_proto(bcopy)
+libc_hidden_proto(bzero)
+libc_hidden_proto(bcmp)
+libc_hidden_proto(index)
+libc_hidden_proto(rindex)
+# endif
+libc_hidden_proto(ffs)
+# if 0 /*def __USE_GNU*/
+libc_hidden_proto(ffsl)
+# ifdef __GNUC__
+libc_hidden_proto(ffsll)
+# endif
+# endif
+libc_hidden_proto(strcasecmp)
+libc_hidden_proto(strncasecmp)
+#endif
+
+
#endif /* string.h */
#endif /* strings.h */
diff --git a/libc/inet/addr.c b/libc/inet/addr.c
index 93ef63fc8..c4d1b98d5 100644
--- a/libc/inet/addr.c
+++ b/libc/inet/addr.c
@@ -156,7 +156,7 @@ libc_hidden_def(inet_ntoa)
#ifdef L_inet_makeaddr
/* for some reason it does not remove the jump relocation */
-libc_hidden_proto(memmove)
+/* Experimentally off - libc_hidden_proto(memmove) */
/*
* Formulate an Internet address from network + host. Used in
diff --git a/libc/inet/getaddrinfo.c b/libc/inet/getaddrinfo.c
index a701667c0..0b885afd2 100644
--- a/libc/inet/getaddrinfo.c
+++ b/libc/inet/getaddrinfo.c
@@ -67,13 +67,13 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include <sys/utsname.h>
#include <net/if.h>
-libc_hidden_proto(memcpy)
-libc_hidden_proto(memset)
+/* Experimentally off - libc_hidden_proto(memcpy) */
+/* Experimentally off - libc_hidden_proto(memset) */
/* libc_hidden_proto(strcmp) */
/* libc_hidden_proto(stpcpy) */
-libc_hidden_proto(strchr)
-libc_hidden_proto(strcpy)
-libc_hidden_proto(strlen)
+/* Experimentally off - libc_hidden_proto(strchr) */
+/* Experimentally off - libc_hidden_proto(strcpy) */
+/* Experimentally off - libc_hidden_proto(strlen) */
libc_hidden_proto(socket)
libc_hidden_proto(close)
libc_hidden_proto(getservbyname_r)
diff --git a/libc/inet/getnetbynm.c b/libc/inet/getnetbynm.c
index 97d5cb85f..92cf8777b 100644
--- a/libc/inet/getnetbynm.c
+++ b/libc/inet/getnetbynm.c
@@ -20,7 +20,7 @@
#include <netdb.h>
#include <string.h>
-libc_hidden_proto(strcmp)
+/* Experimentally off - libc_hidden_proto(strcmp) */
libc_hidden_proto(setnetent)
libc_hidden_proto(getnetent)
libc_hidden_proto(endnetent)
diff --git a/libc/inet/getproto.c b/libc/inet/getproto.c
index acd2667de..f28a4cb17 100644
--- a/libc/inet/getproto.c
+++ b/libc/inet/getproto.c
@@ -63,8 +63,8 @@
#include <errno.h>
libc_hidden_proto(fopen)
-libc_hidden_proto(strcmp)
-libc_hidden_proto(strpbrk)
+/* Experimentally off - libc_hidden_proto(strcmp) */
+/* Experimentally off - libc_hidden_proto(strpbrk) */
libc_hidden_proto(atoi)
libc_hidden_proto(rewind)
libc_hidden_proto(fgets)
diff --git a/libc/inet/getservice.c b/libc/inet/getservice.c
index 09c2f9b94..e2a158cba 100644
--- a/libc/inet/getservice.c
+++ b/libc/inet/getservice.c
@@ -64,8 +64,8 @@
#include <arpa/inet.h>
#include <errno.h>
-libc_hidden_proto(strcmp)
-libc_hidden_proto(strpbrk)
+/* Experimentally off - libc_hidden_proto(strcmp) */
+/* Experimentally off - libc_hidden_proto(strpbrk) */
libc_hidden_proto(fopen)
libc_hidden_proto(fclose)
libc_hidden_proto(atoi)
diff --git a/libc/inet/hostid.c b/libc/inet/hostid.c
index 442294acb..170d87361 100644
--- a/libc/inet/hostid.c
+++ b/libc/inet/hostid.c
@@ -15,7 +15,7 @@
#include <fcntl.h>
#include <unistd.h>
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
libc_hidden_proto(open)
libc_hidden_proto(close)
libc_hidden_proto(read)
diff --git a/libc/inet/if_index.c b/libc/inet/if_index.c
index ed46db231..03e7089cf 100644
--- a/libc/inet/if_index.c
+++ b/libc/inet/if_index.c
@@ -35,12 +35,12 @@
#include "netlinkaccess.h"
-libc_hidden_proto(strncpy)
-libc_hidden_proto(strdup)
+/* Experimentally off - libc_hidden_proto(strncpy) */
+/* Experimentally off - libc_hidden_proto(strdup) */
libc_hidden_proto(ioctl)
libc_hidden_proto(close)
#if __ASSUME_NETLINK_SUPPORT
-libc_hidden_proto(strndup)
+/* Experimentally off - libc_hidden_proto(strndup) */
#endif
extern int __opensock(void) attribute_hidden;
diff --git a/libc/inet/ifaddrs.c b/libc/inet/ifaddrs.c
index be68d97ee..d1ff8d47f 100644
--- a/libc/inet/ifaddrs.c
+++ b/libc/inet/ifaddrs.c
@@ -45,8 +45,8 @@ libc_hidden_proto(close)
libc_hidden_proto(sendto)
libc_hidden_proto(recvmsg)
libc_hidden_proto(bind)
-libc_hidden_proto(memset)
-libc_hidden_proto(mempcpy)
+/* Experimentally off - libc_hidden_proto(memset) */
+/* Experimentally off - libc_hidden_proto(mempcpy) */
libc_hidden_proto(getsockname)
libc_hidden_proto(fclose)
libc_hidden_proto(abort)
diff --git a/libc/inet/ntop.c b/libc/inet/ntop.c
index 88ff6a150..4e448e92b 100644
--- a/libc/inet/ntop.c
+++ b/libc/inet/ntop.c
@@ -30,11 +30,11 @@
#include <string.h>
#include <ctype.h>
-libc_hidden_proto(memcpy)
-libc_hidden_proto(memset)
-libc_hidden_proto(strchr)
-libc_hidden_proto(strcpy)
-libc_hidden_proto(strlen)
+/* Experimentally off - libc_hidden_proto(memcpy) */
+/* Experimentally off - libc_hidden_proto(memset) */
+/* Experimentally off - libc_hidden_proto(strchr) */
+/* Experimentally off - libc_hidden_proto(strcpy) */
+/* Experimentally off - libc_hidden_proto(strlen) */
libc_hidden_proto(sprintf)
libc_hidden_proto(tolower)
diff --git a/libc/inet/resolv.c b/libc/inet/resolv.c
index 96d5b00ec..7b19ce3a5 100644
--- a/libc/inet/resolv.c
+++ b/libc/inet/resolv.c
@@ -168,19 +168,19 @@
__UCLIBC_MUTEX_EXTERN(__resolv_lock);
-libc_hidden_proto(memcpy)
-libc_hidden_proto(memset)
-libc_hidden_proto(memmove)
-libc_hidden_proto(strchr)
-libc_hidden_proto(strcmp)
-libc_hidden_proto(strcpy)
-libc_hidden_proto(strdup)
-libc_hidden_proto(strlen)
-libc_hidden_proto(strncat)
-libc_hidden_proto(strncpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
+/* Experimentally off - libc_hidden_proto(memset) */
+/* Experimentally off - libc_hidden_proto(memmove) */
+/* Experimentally off - libc_hidden_proto(strchr) */
+/* Experimentally off - libc_hidden_proto(strcmp) */
+/* Experimentally off - libc_hidden_proto(strcpy) */
+/* Experimentally off - libc_hidden_proto(strdup) */
+/* Experimentally off - libc_hidden_proto(strlen) */
+/* Experimentally off - libc_hidden_proto(strncat) */
+/* Experimentally off - libc_hidden_proto(strncpy) */
/* libc_hidden_proto(strnlen) */
-libc_hidden_proto(strstr)
-libc_hidden_proto(strcasecmp)
+/* Experimentally off - libc_hidden_proto(strstr) */
+/* Experimentally off - libc_hidden_proto(strcasecmp) */
libc_hidden_proto(socket)
libc_hidden_proto(close)
libc_hidden_proto(fopen)
diff --git a/libc/inet/rpc/auth_unix.c b/libc/inet/rpc/auth_unix.c
index 80b60b56b..8015e4f61 100644
--- a/libc/inet/rpc/auth_unix.c
+++ b/libc/inet/rpc/auth_unix.c
@@ -56,7 +56,7 @@
# include <wchar.h>
#endif
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
libc_hidden_proto(sysconf)
libc_hidden_proto(getegid)
libc_hidden_proto(geteuid)
diff --git a/libc/inet/rpc/bindresvport.c b/libc/inet/rpc/bindresvport.c
index 32055cdf6..3f266e6cc 100644
--- a/libc/inet/rpc/bindresvport.c
+++ b/libc/inet/rpc/bindresvport.c
@@ -40,7 +40,7 @@
#include <sys/socket.h>
#include <netinet/in.h>
-libc_hidden_proto(memset)
+/* Experimentally off - libc_hidden_proto(memset) */
libc_hidden_proto(bind)
libc_hidden_proto(getpid)
diff --git a/libc/inet/rpc/clnt_generic.c b/libc/inet/rpc/clnt_generic.c
index 899a9dd0e..54bd0e914 100644
--- a/libc/inet/rpc/clnt_generic.c
+++ b/libc/inet/rpc/clnt_generic.c
@@ -40,10 +40,10 @@
#include <sys/socket.h>
#include <netdb.h>
-libc_hidden_proto(memcpy)
-libc_hidden_proto(memset)
-libc_hidden_proto(strcmp)
-libc_hidden_proto(strcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
+/* Experimentally off - libc_hidden_proto(memset) */
+/* Experimentally off - libc_hidden_proto(strcmp) */
+/* Experimentally off - libc_hidden_proto(strcpy) */
libc_hidden_proto(clnttcp_create)
libc_hidden_proto(clntudp_create)
libc_hidden_proto(clntunix_create)
diff --git a/libc/inet/rpc/clnt_perror.c b/libc/inet/rpc/clnt_perror.c
index ef3ed2d30..89a31a2d6 100644
--- a/libc/inet/rpc/clnt_perror.c
+++ b/libc/inet/rpc/clnt_perror.c
@@ -51,8 +51,8 @@ static char sccsid[] = "@(#)clnt_perror.c 1.15 87/10/07 Copyr 1984 Sun Micro";
# define fputs(s, f) _IO_fputs (s, f)
#endif
-libc_hidden_proto(strcpy)
-libc_hidden_proto(strlen)
+/* Experimentally off - libc_hidden_proto(strcpy) */
+/* Experimentally off - libc_hidden_proto(strlen) */
libc_hidden_proto(sprintf)
libc_hidden_proto(__glibc_strerror_r)
libc_hidden_proto(fputs)
diff --git a/libc/inet/rpc/clnt_simple.c b/libc/inet/rpc/clnt_simple.c
index f9f18f3d4..745a50213 100644
--- a/libc/inet/rpc/clnt_simple.c
+++ b/libc/inet/rpc/clnt_simple.c
@@ -50,9 +50,9 @@ static char sccsid[] = "@(#)clnt_simple.c 1.35 87/08/11 Copyr 1984 Sun Micro";
#include <netdb.h>
#include <string.h>
-libc_hidden_proto(memcpy)
-libc_hidden_proto(strcmp)
-libc_hidden_proto(strncpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
+/* Experimentally off - libc_hidden_proto(strcmp) */
+/* Experimentally off - libc_hidden_proto(strncpy) */
libc_hidden_proto(close)
libc_hidden_proto(clntudp_create)
libc_hidden_proto(gethostbyname_r)
diff --git a/libc/inet/rpc/clnt_udp.c b/libc/inet/rpc/clnt_udp.c
index 9e3444069..1d7cb4863 100644
--- a/libc/inet/rpc/clnt_udp.c
+++ b/libc/inet/rpc/clnt_udp.c
@@ -62,7 +62,7 @@ libc_hidden_proto(fwprintf)
#include <sys/uio.h>
#endif
-libc_hidden_proto(memcmp)
+/* Experimentally off - libc_hidden_proto(memcmp) */
libc_hidden_proto(ioctl)
libc_hidden_proto(socket)
libc_hidden_proto(close)
diff --git a/libc/inet/rpc/clnt_unix.c b/libc/inet/rpc/clnt_unix.c
index 82f994e51..73be74288 100644
--- a/libc/inet/rpc/clnt_unix.c
+++ b/libc/inet/rpc/clnt_unix.c
@@ -63,8 +63,8 @@
libc_hidden_proto(fwprintf)
#endif
-libc_hidden_proto(strlen)
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(strlen) */
+/* Experimentally off - libc_hidden_proto(memcpy) */
libc_hidden_proto(socket)
libc_hidden_proto(close)
libc_hidden_proto(getpid)
diff --git a/libc/inet/rpc/getrpcent.c b/libc/inet/rpc/getrpcent.c
index d7229191e..7b9b93758 100644
--- a/libc/inet/rpc/getrpcent.c
+++ b/libc/inet/rpc/getrpcent.c
@@ -44,11 +44,11 @@
#include <arpa/inet.h>
#include <errno.h>
-libc_hidden_proto(memcpy)
-libc_hidden_proto(memset)
-libc_hidden_proto(strchr)
-libc_hidden_proto(strcmp)
-libc_hidden_proto(strlen)
+/* Experimentally off - libc_hidden_proto(memcpy) */
+/* Experimentally off - libc_hidden_proto(memset) */
+/* Experimentally off - libc_hidden_proto(strchr) */
+/* Experimentally off - libc_hidden_proto(strcmp) */
+/* Experimentally off - libc_hidden_proto(strlen) */
libc_hidden_proto(fopen)
libc_hidden_proto(fclose)
libc_hidden_proto(atoi)
diff --git a/libc/inet/rpc/getrpcport.c b/libc/inet/rpc/getrpcport.c
index 82fa8d17a..0a57d1da9 100644
--- a/libc/inet/rpc/getrpcport.c
+++ b/libc/inet/rpc/getrpcport.c
@@ -48,7 +48,7 @@ static char sccsid[] = "@(#)getrpcport.c 1.3 87/08/11 SMI";
#include <rpc/pmap_clnt.h>
#include <sys/socket.h>
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
libc_hidden_proto(pmap_getport)
libc_hidden_proto(gethostbyname_r)
diff --git a/libc/inet/rpc/pmap_rmt.c b/libc/inet/rpc/pmap_rmt.c
index a0aa22985..759534aa7 100644
--- a/libc/inet/rpc/pmap_rmt.c
+++ b/libc/inet/rpc/pmap_rmt.c
@@ -59,7 +59,7 @@ static char sccsid[] = "@(#)pmap_rmt.c 1.21 87/08/27 Copyr 1984 Sun Micro";
#include <arpa/inet.h>
#define MAX_BROADCAST_SIZE 1400
-libc_hidden_proto(memset)
+/* Experimentally off - libc_hidden_proto(memset) */
libc_hidden_proto(ioctl)
libc_hidden_proto(perror)
libc_hidden_proto(socket)
diff --git a/libc/inet/rpc/rcmd.c b/libc/inet/rpc/rcmd.c
index ccab7d60a..47b92751b 100644
--- a/libc/inet/rpc/rcmd.c
+++ b/libc/inet/rpc/rcmd.c
@@ -87,14 +87,14 @@ static char sccsid[] = "@(#)rcmd.c 8.3 (Berkeley) 3/26/94";
#endif
#include <sys/uio.h>
-libc_hidden_proto(memcmp)
-libc_hidden_proto(strcat)
-libc_hidden_proto(strchr)
-libc_hidden_proto(strcmp)
-libc_hidden_proto(strcpy)
-libc_hidden_proto(strlen)
-libc_hidden_proto(strncmp)
-libc_hidden_proto(memmove)
+/* Experimentally off - libc_hidden_proto(memcmp) */
+/* Experimentally off - libc_hidden_proto(strcat) */
+/* Experimentally off - libc_hidden_proto(strchr) */
+/* Experimentally off - libc_hidden_proto(strcmp) */
+/* Experimentally off - libc_hidden_proto(strcpy) */
+/* Experimentally off - libc_hidden_proto(strlen) */
+/* Experimentally off - libc_hidden_proto(strncmp) */
+/* Experimentally off - libc_hidden_proto(memmove) */
libc_hidden_proto(getpid)
libc_hidden_proto(socket)
libc_hidden_proto(close)
diff --git a/libc/inet/rpc/rexec.c b/libc/inet/rpc/rexec.c
index 44ab3eef9..2eb567ed2 100644
--- a/libc/inet/rpc/rexec.c
+++ b/libc/inet/rpc/rexec.c
@@ -42,9 +42,9 @@
#include <string.h>
#include <unistd.h>
-libc_hidden_proto(memset)
-libc_hidden_proto(strlen)
-libc_hidden_proto(strncpy)
+/* Experimentally off - libc_hidden_proto(memset) */
+/* Experimentally off - libc_hidden_proto(strlen) */
+/* Experimentally off - libc_hidden_proto(strncpy) */
libc_hidden_proto(read)
libc_hidden_proto(write)
libc_hidden_proto(close)
diff --git a/libc/inet/rpc/rpc_cmsg.c b/libc/inet/rpc/rpc_cmsg.c
index b47a67c71..3206aae55 100644
--- a/libc/inet/rpc/rpc_cmsg.c
+++ b/libc/inet/rpc/rpc_cmsg.c
@@ -45,7 +45,7 @@ static char sccsid[] = "@(#)rpc_callmsg.c 1.4 87/08/11 Copyr 1984 Sun Micro";
#include <sys/param.h>
#include <rpc/rpc.h>
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
libc_hidden_proto(xdr_enum)
libc_hidden_proto(xdr_opaque)
libc_hidden_proto(xdr_u_int)
diff --git a/libc/inet/rpc/ruserpass.c b/libc/inet/rpc/ruserpass.c
index 8d9d356b1..7a839c3a8 100644
--- a/libc/inet/rpc/ruserpass.c
+++ b/libc/inet/rpc/ruserpass.c
@@ -44,13 +44,13 @@
#include <strings.h>
#include <unistd.h>
-libc_hidden_proto(strcat)
-libc_hidden_proto(strchr)
-libc_hidden_proto(strcmp)
-libc_hidden_proto(strcpy)
-libc_hidden_proto(strlen)
-libc_hidden_proto(strcasecmp)
-libc_hidden_proto(strncasecmp)
+/* Experimentally off - libc_hidden_proto(strcat) */
+/* Experimentally off - libc_hidden_proto(strchr) */
+/* Experimentally off - libc_hidden_proto(strcmp) */
+/* Experimentally off - libc_hidden_proto(strcpy) */
+/* Experimentally off - libc_hidden_proto(strlen) */
+/* Experimentally off - libc_hidden_proto(strcasecmp) */
+/* Experimentally off - libc_hidden_proto(strncasecmp) */
libc_hidden_proto(getenv)
libc_hidden_proto(printf)
libc_hidden_proto(fstat)
diff --git a/libc/inet/rpc/svc.c b/libc/inet/rpc/svc.c
index d41d7644c..253c06379 100644
--- a/libc/inet/rpc/svc.c
+++ b/libc/inet/rpc/svc.c
@@ -46,7 +46,7 @@
#include <rpc/pmap_clnt.h>
#include <sys/poll.h>
-libc_hidden_proto(ffs)
+/* Experimentally off - libc_hidden_proto(ffs) */
libc_hidden_proto(pmap_set)
libc_hidden_proto(pmap_unset)
libc_hidden_proto(_authenticate)
diff --git a/libc/inet/rpc/svc_authux.c b/libc/inet/rpc/svc_authux.c
index ef8476784..64c911f93 100644
--- a/libc/inet/rpc/svc_authux.c
+++ b/libc/inet/rpc/svc_authux.c
@@ -46,7 +46,7 @@
#include <rpc/rpc.h>
#include <rpc/svc.h>
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
libc_hidden_proto(printf)
libc_hidden_proto(xdrmem_create)
libc_hidden_proto(xdr_authunix_parms)
diff --git a/libc/inet/rpc/svc_simple.c b/libc/inet/rpc/svc_simple.c
index 075b930b1..72c272aa7 100644
--- a/libc/inet/rpc/svc_simple.c
+++ b/libc/inet/rpc/svc_simple.c
@@ -55,8 +55,8 @@ static char sccsid[] = "@(#)svc_simple.c 1.18 87/08/11 Copyr 1984 Sun Micro";
# define fputs(s, f) _IO_fputs (s, f)
#endif
-libc_hidden_proto(strdup)
-libc_hidden_proto(memset)
+/* Experimentally off - libc_hidden_proto(strdup) */
+/* Experimentally off - libc_hidden_proto(memset) */
libc_hidden_proto(asprintf)
libc_hidden_proto(fputs)
libc_hidden_proto(write)
diff --git a/libc/inet/rpc/svc_tcp.c b/libc/inet/rpc/svc_tcp.c
index 035119d7e..5e4667940 100644
--- a/libc/inet/rpc/svc_tcp.c
+++ b/libc/inet/rpc/svc_tcp.c
@@ -59,8 +59,8 @@ static char sccsid[] = "@(#)svc_tcp.c 1.21 87/08/11 Copyr 1984 Sun Micro";
# define fputs(s, f) _IO_fputs (s, f)
#endif
-libc_hidden_proto(memset)
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memset) */
+/* Experimentally off - libc_hidden_proto(memcpy) */
libc_hidden_proto(socket)
libc_hidden_proto(close)
libc_hidden_proto(read)
diff --git a/libc/inet/rpc/svc_udp.c b/libc/inet/rpc/svc_udp.c
index d2ed68d1b..e2c97bdc5 100644
--- a/libc/inet/rpc/svc_udp.c
+++ b/libc/inet/rpc/svc_udp.c
@@ -60,9 +60,9 @@ static char sccsid[] = "@(#)svc_udp.c 1.24 87/08/11 Copyr 1984 Sun Micro";
libc_hidden_proto(fwprintf)
#endif
-libc_hidden_proto(memcmp)
-libc_hidden_proto(memcpy)
-libc_hidden_proto(memset)
+/* Experimentally off - libc_hidden_proto(memcmp) */
+/* Experimentally off - libc_hidden_proto(memcpy) */
+/* Experimentally off - libc_hidden_proto(memset) */
libc_hidden_proto(perror)
libc_hidden_proto(socket)
libc_hidden_proto(close)
diff --git a/libc/inet/rpc/svc_unix.c b/libc/inet/rpc/svc_unix.c
index 1683bd3ba..2d7790450 100644
--- a/libc/inet/rpc/svc_unix.c
+++ b/libc/inet/rpc/svc_unix.c
@@ -55,9 +55,9 @@
# include <wchar.h>
#endif
-libc_hidden_proto(memcpy)
-libc_hidden_proto(memset)
-libc_hidden_proto(strlen)
+/* Experimentally off - libc_hidden_proto(memcpy) */
+/* Experimentally off - libc_hidden_proto(memset) */
+/* Experimentally off - libc_hidden_proto(strlen) */
libc_hidden_proto(socket)
libc_hidden_proto(close)
libc_hidden_proto(perror)
diff --git a/libc/inet/rpc/xdr.c b/libc/inet/rpc/xdr.c
index e8009910f..54e716176 100644
--- a/libc/inet/rpc/xdr.c
+++ b/libc/inet/rpc/xdr.c
@@ -56,7 +56,7 @@ static char sccsid[] = "@(#)xdr.c 1.35 87/08/12";
libc_hidden_proto(fwprintf)
#endif
-libc_hidden_proto(strlen)
+/* Experimentally off - libc_hidden_proto(strlen) */
libc_hidden_proto(fputs)
/*
diff --git a/libc/inet/rpc/xdr_array.c b/libc/inet/rpc/xdr_array.c
index 5f21fb29e..a2299b683 100644
--- a/libc/inet/rpc/xdr_array.c
+++ b/libc/inet/rpc/xdr_array.c
@@ -54,7 +54,7 @@ static char sccsid[] = "@(#)xdr_array.c 1.10 87/08/11 Copyr 1984 Sun Micro";
libc_hidden_proto(fwprintf)
#endif
-libc_hidden_proto(memset)
+/* Experimentally off - libc_hidden_proto(memset) */
libc_hidden_proto(fputs)
libc_hidden_proto(xdr_u_int)
diff --git a/libc/inet/rpc/xdr_mem.c b/libc/inet/rpc/xdr_mem.c
index 7613ffc2f..b7410c404 100644
--- a/libc/inet/rpc/xdr_mem.c
+++ b/libc/inet/rpc/xdr_mem.c
@@ -43,7 +43,7 @@
#include <limits.h>
#include <rpc/rpc.h>
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
static bool_t xdrmem_getlong (XDR *, long *);
static bool_t xdrmem_putlong (XDR *, const long *);
diff --git a/libc/inet/rpc/xdr_rec.c b/libc/inet/rpc/xdr_rec.c
index 5f9e2b1fe..ac331c4d3 100644
--- a/libc/inet/rpc/xdr_rec.c
+++ b/libc/inet/rpc/xdr_rec.c
@@ -60,7 +60,7 @@
libc_hidden_proto(fwprintf)
#endif
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
libc_hidden_proto(fputs)
libc_hidden_proto(lseek)
diff --git a/libc/inet/rpc/xdr_reference.c b/libc/inet/rpc/xdr_reference.c
index 7201def7a..6282f9cb1 100644
--- a/libc/inet/rpc/xdr_reference.c
+++ b/libc/inet/rpc/xdr_reference.c
@@ -55,7 +55,7 @@ static char sccsid[] = "@(#)xdr_reference.c 1.11 87/08/11 SMI";
libc_hidden_proto(fwprintf)
#endif
-libc_hidden_proto(memset)
+/* Experimentally off - libc_hidden_proto(memset) */
libc_hidden_proto(xdr_bool)
libc_hidden_proto(fputs)
diff --git a/libc/misc/dirent/alphasort.c b/libc/misc/dirent/alphasort.c
index 533366222..70aa2a516 100644
--- a/libc/misc/dirent/alphasort.c
+++ b/libc/misc/dirent/alphasort.c
@@ -8,7 +8,7 @@
#include <string.h>
#include "dirstream.h"
-libc_hidden_proto(strcmp)
+/* Experimentally off - libc_hidden_proto(strcmp) */
int alphasort(const void * a, const void * b)
{
diff --git a/libc/misc/dirent/alphasort64.c b/libc/misc/dirent/alphasort64.c
index 86a91095d..de7a87a9a 100644
--- a/libc/misc/dirent/alphasort64.c
+++ b/libc/misc/dirent/alphasort64.c
@@ -10,7 +10,7 @@
#include <string.h>
#include "dirstream.h"
-libc_hidden_proto(strcmp)
+/* Experimentally off - libc_hidden_proto(strcmp) */
int alphasort64(const void * a, const void * b)
{
diff --git a/libc/misc/dirent/readdir64_r.c b/libc/misc/dirent/readdir64_r.c
index 19c14496f..193d9196d 100644
--- a/libc/misc/dirent/readdir64_r.c
+++ b/libc/misc/dirent/readdir64_r.c
@@ -14,7 +14,7 @@
#include <dirent.h>
#include "dirstream.h"
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
libc_hidden_proto(readdir64_r)
int readdir64_r(DIR *dir, struct dirent64 *entry, struct dirent64 **result)
diff --git a/libc/misc/dirent/readdir_r.c b/libc/misc/dirent/readdir_r.c
index 9493ecc0d..194af621f 100644
--- a/libc/misc/dirent/readdir_r.c
+++ b/libc/misc/dirent/readdir_r.c
@@ -11,7 +11,7 @@
#include <dirent.h>
#include "dirstream.h"
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
libc_hidden_proto(readdir_r)
int readdir_r(DIR *dir, struct dirent *entry, struct dirent **result)
diff --git a/libc/misc/dirent/scandir.c b/libc/misc/dirent/scandir.c
index 41491baee..0e823ad98 100644
--- a/libc/misc/dirent/scandir.c
+++ b/libc/misc/dirent/scandir.c
@@ -12,7 +12,7 @@
#include <sys/types.h>
#include "dirstream.h"
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
libc_hidden_proto(readdir)
libc_hidden_proto(opendir)
libc_hidden_proto(closedir)
diff --git a/libc/misc/dirent/scandir64.c b/libc/misc/dirent/scandir64.c
index 7b1dbd000..98433f46d 100644
--- a/libc/misc/dirent/scandir64.c
+++ b/libc/misc/dirent/scandir64.c
@@ -30,7 +30,7 @@
#include <sys/types.h>
#include "dirstream.h"
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
libc_hidden_proto(opendir)
libc_hidden_proto(closedir)
libc_hidden_proto(qsort)
diff --git a/libc/misc/error/error.c b/libc/misc/error/error.c
index 5f0d512e9..ed4a62ef6 100644
--- a/libc/misc/error/error.c
+++ b/libc/misc/error/error.c
@@ -26,8 +26,8 @@
#include <string.h>
#include <error.h>
-libc_hidden_proto(strcmp)
-libc_hidden_proto(strerror)
+/* Experimentally off - libc_hidden_proto(strcmp) */
+/* Experimentally off - libc_hidden_proto(strerror) */
libc_hidden_proto(fprintf)
libc_hidden_proto(exit)
libc_hidden_proto(putc)
diff --git a/libc/misc/file/lockf.c b/libc/misc/file/lockf.c
index 6c1184be2..13b56aba4 100644
--- a/libc/misc/file/lockf.c
+++ b/libc/misc/file/lockf.c
@@ -26,7 +26,7 @@
libc_hidden_proto(lockf)
-libc_hidden_proto(memset)
+/* Experimentally off - libc_hidden_proto(memset) */
libc_hidden_proto(fcntl)
libc_hidden_proto(getpid)
diff --git a/libc/misc/file/lockf64.c b/libc/misc/file/lockf64.c
index 48983d448..b2ffe5d8c 100644
--- a/libc/misc/file/lockf64.c
+++ b/libc/misc/file/lockf64.c
@@ -37,7 +37,7 @@ libc_hidden_proto(fcntl64)
libc_hidden_proto(fcntl)
#endif
-libc_hidden_proto(memset)
+/* Experimentally off - libc_hidden_proto(memset) */
libc_hidden_proto(getpid)
/* lockf is a simplified interface to fcntl's locking facilities. */
diff --git a/libc/misc/fnmatch/fnmatch.c b/libc/misc/fnmatch/fnmatch.c
index 2d957772f..5e8578671 100644
--- a/libc/misc/fnmatch/fnmatch.c
+++ b/libc/misc/fnmatch/fnmatch.c
@@ -54,15 +54,15 @@
#ifdef __UCLIBC__
#define __memset memset
-libc_hidden_proto(memchr)
-libc_hidden_proto(memset)
-libc_hidden_proto(mempcpy)
-libc_hidden_proto(strcat)
-libc_hidden_proto(strcmp)
+/* Experimentally off - libc_hidden_proto(memchr) */
+/* Experimentally off - libc_hidden_proto(memset) */
+/* Experimentally off - libc_hidden_proto(mempcpy) */
+/* Experimentally off - libc_hidden_proto(strcat) */
+/* Experimentally off - libc_hidden_proto(strcmp) */
/*libc_hidden_proto(strchr)*/
/*libc_hidden_proto(strchrnul)*/
-libc_hidden_proto(strlen)
-libc_hidden_proto(strcoll)
+/* Experimentally off - libc_hidden_proto(strlen) */
+/* Experimentally off - libc_hidden_proto(strcoll) */
#ifdef __UCLIBC_HAS_XLOCALE__
libc_hidden_proto(__ctype_b_loc)
libc_hidden_proto(__ctype_tolower_loc)
diff --git a/libc/misc/ftw/ftw.c b/libc/misc/ftw/ftw.c
index 6521b44e4..33d1a651d 100644
--- a/libc/misc/ftw/ftw.c
+++ b/libc/misc/ftw/ftw.c
@@ -83,9 +83,9 @@ char *alloca ();
# include <sys/stat.h>
#endif
-libc_hidden_proto(memset)
-libc_hidden_proto(strchr)
-libc_hidden_proto(strlen)
+/* Experimentally off - libc_hidden_proto(memset) */
+/* Experimentally off - libc_hidden_proto(strchr) */
+/* Experimentally off - libc_hidden_proto(strlen) */
libc_hidden_proto(dirfd)
libc_hidden_proto(tsearch)
libc_hidden_proto(tfind)
@@ -93,7 +93,7 @@ libc_hidden_proto(tdestroy)
libc_hidden_proto(getcwd)
libc_hidden_proto(chdir)
libc_hidden_proto(fchdir)
-libc_hidden_proto(mempcpy)
+/* Experimentally off - libc_hidden_proto(mempcpy) */
libc_hidden_proto(opendir)
#ifdef __UCLIBC_HAS_LFS__
libc_hidden_proto(readdir64)
@@ -101,7 +101,7 @@ libc_hidden_proto(lstat64)
libc_hidden_proto(stat64)
#endif
libc_hidden_proto(closedir)
-libc_hidden_proto(stpcpy)
+/* Experimentally off - libc_hidden_proto(stpcpy) */
libc_hidden_proto(lstat)
libc_hidden_proto(stat)
diff --git a/libc/misc/glob/glob-susv3.c b/libc/misc/glob/glob-susv3.c
index e5b48cac3..8f441ac68 100644
--- a/libc/misc/glob/glob-susv3.c
+++ b/libc/misc/glob/glob-susv3.c
@@ -23,12 +23,12 @@
#include <unistd.h>
#include <stdio.h>
-libc_hidden_proto(memcpy)
-libc_hidden_proto(strcat)
-libc_hidden_proto(strchr)
-libc_hidden_proto(strcmp)
-libc_hidden_proto(strcpy)
-libc_hidden_proto(strlen)
+/* Experimentally off - libc_hidden_proto(memcpy) */
+/* Experimentally off - libc_hidden_proto(strcat) */
+/* Experimentally off - libc_hidden_proto(strchr) */
+/* Experimentally off - libc_hidden_proto(strcmp) */
+/* Experimentally off - libc_hidden_proto(strcpy) */
+/* Experimentally off - libc_hidden_proto(strlen) */
libc_hidden_proto(opendir)
libc_hidden_proto(closedir)
libc_hidden_proto(qsort)
diff --git a/libc/misc/glob/glob.c b/libc/misc/glob/glob.c
index 1bbfa3cfe..00c49688f 100644
--- a/libc/misc/glob/glob.c
+++ b/libc/misc/glob/glob.c
@@ -33,17 +33,17 @@
libc_hidden_proto(closedir)
libc_hidden_proto(fnmatch)
-libc_hidden_proto(memcpy)
-libc_hidden_proto(mempcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
+/* Experimentally off - libc_hidden_proto(mempcpy) */
libc_hidden_proto(opendir)
libc_hidden_proto(qsort)
libc_hidden_proto(readdir)
-libc_hidden_proto(strchr)
-libc_hidden_proto(strcoll)
-libc_hidden_proto(strcpy)
-libc_hidden_proto(strdup)
-libc_hidden_proto(strlen)
-libc_hidden_proto(strrchr)
+/* Experimentally off - libc_hidden_proto(strchr) */
+/* Experimentally off - libc_hidden_proto(strcoll) */
+/* Experimentally off - libc_hidden_proto(strcpy) */
+/* Experimentally off - libc_hidden_proto(strdup) */
+/* Experimentally off - libc_hidden_proto(strlen) */
+/* Experimentally off - libc_hidden_proto(strrchr) */
#ifdef ENABLE_GLOB_TILDE_EXPANSION
diff --git a/libc/misc/internals/__uClibc_main.c b/libc/misc/internals/__uClibc_main.c
index c9c16e192..92aeead0e 100644
--- a/libc/misc/internals/__uClibc_main.c
+++ b/libc/misc/internals/__uClibc_main.c
@@ -31,10 +31,10 @@
libc_hidden_proto(exit)
#ifdef __UCLIBC_HAS_PROGRAM_INVOCATION_NAME__
-libc_hidden_proto(strrchr)
+/* Experimentally off - libc_hidden_proto(strrchr) */
#endif
#ifndef __ARCH_HAS_NO_LDSO__
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
libc_hidden_proto(getgid)
libc_hidden_proto(getuid)
libc_hidden_proto(getegid)
diff --git a/libc/misc/internals/tempname.c b/libc/misc/internals/tempname.c
index dc125020b..0883259bd 100644
--- a/libc/misc/internals/tempname.c
+++ b/libc/misc/internals/tempname.c
@@ -45,8 +45,8 @@
#include <sys/time.h>
#include "tempname.h"
-libc_hidden_proto(strlen)
-libc_hidden_proto(strcmp)
+/* Experimentally off - libc_hidden_proto(strlen) */
+/* Experimentally off - libc_hidden_proto(strcmp) */
libc_hidden_proto(sprintf)
libc_hidden_proto(mkdir)
libc_hidden_proto(open)
diff --git a/libc/misc/locale/locale.c b/libc/misc/locale/locale.c
index 67ca4c248..9825798ed 100644
--- a/libc/misc/locale/locale.c
+++ b/libc/misc/locale/locale.c
@@ -58,14 +58,14 @@
#include <ctype.h>
#include <stdio.h>
-libc_hidden_proto(memcpy)
-libc_hidden_proto(memset)
-libc_hidden_proto(strtok_r)
-libc_hidden_proto(strlen)
-libc_hidden_proto(strcmp)
-libc_hidden_proto(strcpy)
-libc_hidden_proto(strncmp)
-libc_hidden_proto(strchr)
+/* Experimentally off - libc_hidden_proto(memcpy) */
+/* Experimentally off - libc_hidden_proto(memset) */
+/* Experimentally off - libc_hidden_proto(strtok_r) */
+/* Experimentally off - libc_hidden_proto(strlen) */
+/* Experimentally off - libc_hidden_proto(strcmp) */
+/* Experimentally off - libc_hidden_proto(strcpy) */
+/* Experimentally off - libc_hidden_proto(strncmp) */
+/* Experimentally off - libc_hidden_proto(strchr) */
libc_hidden_proto(getenv)
#ifdef __UCLIBC_HAS_CTYPE_TABLES__
libc_hidden_proto(__C_ctype_toupper)
@@ -193,7 +193,7 @@ static const char utf8[] = "UTF-8";
*/
static char hr_locale[(MAX_LOCALE_CATEGORY_STR * LC_ALL) + MAX_LOCALE_STR];
-libc_hidden_proto(stpcpy)
+/* Experimentally off - libc_hidden_proto(stpcpy) */
libc_hidden_proto(newlocale)
static void update_hr_locale(const unsigned char *spec)
@@ -1084,7 +1084,7 @@ libc_hidden_def(__XL_NPP(nl_langinfo))
/**********************************************************************/
#ifdef L_newlocale
-libc_hidden_proto(stpcpy)
+/* Experimentally off - libc_hidden_proto(stpcpy) */
libc_hidden_proto(newlocale)
#ifdef __UCLIBC_MJN3_ONLY__
diff --git a/libc/misc/mntent/mntent.c b/libc/misc/mntent/mntent.c
index 35b38bbc2..aaf0b68e6 100644
--- a/libc/misc/mntent/mntent.c
+++ b/libc/misc/mntent/mntent.c
@@ -17,8 +17,8 @@ libc_hidden_proto(getmntent_r)
libc_hidden_proto(setmntent)
libc_hidden_proto(endmntent)
-libc_hidden_proto(strstr)
-libc_hidden_proto(strtok_r)
+/* Experimentally off - libc_hidden_proto(strstr) */
+/* Experimentally off - libc_hidden_proto(strtok_r) */
libc_hidden_proto(atoi)
libc_hidden_proto(fopen)
libc_hidden_proto(fclose)
diff --git a/libc/misc/regex/regex.c b/libc/misc/regex/regex.c
index 192034b4e..ee72b74c5 100644
--- a/libc/misc/regex/regex.c
+++ b/libc/misc/regex/regex.c
@@ -78,19 +78,19 @@ libc_hidden_proto(isascii)
#endif
libc_hidden_proto(toupper)
libc_hidden_proto(tolower)
-libc_hidden_proto(memcmp)
-libc_hidden_proto(memcpy)
-libc_hidden_proto(memmove)
-libc_hidden_proto(memset)
-libc_hidden_proto(strchr)
-libc_hidden_proto(strcmp)
-libc_hidden_proto(strlen)
-libc_hidden_proto(strncpy)
+/* Experimentally off - libc_hidden_proto(memcmp) */
+/* Experimentally off - libc_hidden_proto(memcpy) */
+/* Experimentally off - libc_hidden_proto(memmove) */
+/* Experimentally off - libc_hidden_proto(memset) */
+/* Experimentally off - libc_hidden_proto(strchr) */
+/* Experimentally off - libc_hidden_proto(strcmp) */
+/* Experimentally off - libc_hidden_proto(strlen) */
+/* Experimentally off - libc_hidden_proto(strncpy) */
libc_hidden_proto(getenv)
-libc_hidden_proto(strcasecmp)
+/* Experimentally off - libc_hidden_proto(strcasecmp) */
libc_hidden_proto(abort)
#ifdef __USE_GNU
-libc_hidden_proto(mempcpy)
+/* Experimentally off - libc_hidden_proto(mempcpy) */
#endif
#endif
diff --git a/libc/misc/regex/regex_old.c b/libc/misc/regex/regex_old.c
index bdede3097..770392858 100644
--- a/libc/misc/regex/regex_old.c
+++ b/libc/misc/regex/regex_old.c
@@ -38,15 +38,15 @@
#include <malloc.h>
#include <stdio.h>
-libc_hidden_proto(memset)
-libc_hidden_proto(memcmp)
-libc_hidden_proto(memcpy)
-libc_hidden_proto(strcmp)
-libc_hidden_proto(strlen)
+/* Experimentally off - libc_hidden_proto(memset) */
+/* Experimentally off - libc_hidden_proto(memcmp) */
+/* Experimentally off - libc_hidden_proto(memcpy) */
+/* Experimentally off - libc_hidden_proto(strcmp) */
+/* Experimentally off - libc_hidden_proto(strlen) */
libc_hidden_proto(printf)
libc_hidden_proto(abort)
#ifdef __USE_GNU
-libc_hidden_proto(mempcpy)
+/* Experimentally off - libc_hidden_proto(mempcpy) */
#endif
libc_hidden_proto(__uc_malloc)
diff --git a/libc/misc/search/_hsearch_r.c b/libc/misc/search/_hsearch_r.c
index a1cdbb681..257c0610c 100644
--- a/libc/misc/search/_hsearch_r.c
+++ b/libc/misc/search/_hsearch_r.c
@@ -135,8 +135,8 @@ libc_hidden_def(hdestroy_r)
equality of the stored and the parameter value. This helps to prevent
unnecessary expensive calls of strcmp. */
-libc_hidden_proto(strcmp)
-libc_hidden_proto(strlen)
+/* Experimentally off - libc_hidden_proto(strcmp) */
+/* Experimentally off - libc_hidden_proto(strlen) */
libc_hidden_proto(hsearch_r)
int hsearch_r (ENTRY item, ACTION action, ENTRY **retval,
diff --git a/libc/misc/search/_lsearch.c b/libc/misc/search/_lsearch.c
index eefef2121..6c3afcba1 100644
--- a/libc/misc/search/_lsearch.c
+++ b/libc/misc/search/_lsearch.c
@@ -34,7 +34,7 @@ libc_hidden_def(lfind)
#ifdef L_lsearch
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
void *lsearch(const void *key, void *base, size_t *nmemb,
size_t size, int (*compar)(const void *, const void *))
diff --git a/libc/misc/statfs/fstatfs64.c b/libc/misc/statfs/fstatfs64.c
index dd271e7a3..a7f94b125 100644
--- a/libc/misc/statfs/fstatfs64.c
+++ b/libc/misc/statfs/fstatfs64.c
@@ -25,7 +25,7 @@
#include <sys/statvfs.h>
#include <stddef.h>
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
libc_hidden_proto(fstatfs)
/* Return information about the filesystem on which FD resides. */
diff --git a/libc/misc/statfs/fstatvfs.c b/libc/misc/statfs/fstatvfs.c
index c28132022..bc00cc6b5 100644
--- a/libc/misc/statfs/fstatvfs.c
+++ b/libc/misc/statfs/fstatvfs.c
@@ -27,9 +27,9 @@
#include <sys/statfs.h>
#include <sys/statvfs.h>
-libc_hidden_proto(memset)
-libc_hidden_proto(strcmp)
-libc_hidden_proto(strsep)
+/* Experimentally off - libc_hidden_proto(memset) */
+/* Experimentally off - libc_hidden_proto(strcmp) */
+/* Experimentally off - libc_hidden_proto(strsep) */
libc_hidden_proto(setmntent)
libc_hidden_proto(getmntent_r)
libc_hidden_proto(endmntent)
diff --git a/libc/misc/statfs/fstatvfs64.c b/libc/misc/statfs/fstatvfs64.c
index a37642e70..02e7011cf 100644
--- a/libc/misc/statfs/fstatvfs64.c
+++ b/libc/misc/statfs/fstatvfs64.c
@@ -28,9 +28,9 @@
#include <sys/statfs.h>
#include <sys/statvfs.h>
-libc_hidden_proto(memset)
-libc_hidden_proto(strcmp)
-libc_hidden_proto(strsep)
+/* Experimentally off - libc_hidden_proto(memset) */
+/* Experimentally off - libc_hidden_proto(strcmp) */
+/* Experimentally off - libc_hidden_proto(strsep) */
libc_hidden_proto(setmntent)
libc_hidden_proto(getmntent_r)
libc_hidden_proto(endmntent)
diff --git a/libc/misc/statfs/statfs64.c b/libc/misc/statfs/statfs64.c
index 8574c17af..18ce33be8 100644
--- a/libc/misc/statfs/statfs64.c
+++ b/libc/misc/statfs/statfs64.c
@@ -24,7 +24,7 @@
#include <sys/statfs.h>
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
libc_hidden_proto(statfs)
/* Return information about the filesystem on which FILE resides. */
diff --git a/libc/misc/statfs/statvfs.c b/libc/misc/statfs/statvfs.c
index 6c3bf7c56..077a2fb0b 100644
--- a/libc/misc/statfs/statvfs.c
+++ b/libc/misc/statfs/statvfs.c
@@ -27,9 +27,9 @@
#include <sys/statfs.h>
#include <sys/statvfs.h>
-libc_hidden_proto(memset)
-libc_hidden_proto(strcmp)
-libc_hidden_proto(strsep)
+/* Experimentally off - libc_hidden_proto(memset) */
+/* Experimentally off - libc_hidden_proto(strcmp) */
+/* Experimentally off - libc_hidden_proto(strsep) */
libc_hidden_proto(setmntent)
libc_hidden_proto(getmntent_r)
libc_hidden_proto(endmntent)
diff --git a/libc/misc/statfs/statvfs64.c b/libc/misc/statfs/statvfs64.c
index 4a71989ec..c91e1fe26 100644
--- a/libc/misc/statfs/statvfs64.c
+++ b/libc/misc/statfs/statvfs64.c
@@ -28,9 +28,9 @@
#include <sys/statfs.h>
#include <sys/statvfs.h>
-libc_hidden_proto(memset)
-libc_hidden_proto(strcmp)
-libc_hidden_proto(strsep)
+/* Experimentally off - libc_hidden_proto(memset) */
+/* Experimentally off - libc_hidden_proto(strcmp) */
+/* Experimentally off - libc_hidden_proto(strsep) */
libc_hidden_proto(setmntent)
libc_hidden_proto(getmntent_r)
libc_hidden_proto(endmntent)
diff --git a/libc/misc/syslog/syslog.c b/libc/misc/syslog/syslog.c
index ce78544b0..c5c1b9e37 100644
--- a/libc/misc/syslog/syslog.c
+++ b/libc/misc/syslog/syslog.c
@@ -84,12 +84,12 @@ libc_hidden_proto(syslog)
libc_hidden_proto(vsyslog)
libc_hidden_proto(closelog)
-libc_hidden_proto(memset)
-libc_hidden_proto(memcpy)
-libc_hidden_proto(memmove)
-libc_hidden_proto(strchr)
-libc_hidden_proto(strlen)
-libc_hidden_proto(strncpy)
+/* Experimentally off - libc_hidden_proto(memset) */
+/* Experimentally off - libc_hidden_proto(memcpy) */
+/* Experimentally off - libc_hidden_proto(memmove) */
+/* Experimentally off - libc_hidden_proto(strchr) */
+/* Experimentally off - libc_hidden_proto(strlen) */
+/* Experimentally off - libc_hidden_proto(strncpy) */
libc_hidden_proto(open)
libc_hidden_proto(fcntl)
libc_hidden_proto(socket)
diff --git a/libc/misc/time/time.c b/libc/misc/time/time.c
index 6571b14b3..4f15606c4 100644
--- a/libc/misc/time/time.c
+++ b/libc/misc/time/time.c
@@ -161,12 +161,12 @@ libc_hidden_proto(ctime)
libc_hidden_proto(localtime)
libc_hidden_proto(localtime_r)
-libc_hidden_proto(memset)
-libc_hidden_proto(memcpy)
-libc_hidden_proto(strcmp)
-libc_hidden_proto(strcpy)
-libc_hidden_proto(strlen)
-libc_hidden_proto(strncpy)
+/* Experimentally off - libc_hidden_proto(memset) */
+/* Experimentally off - libc_hidden_proto(memcpy) */
+/* Experimentally off - libc_hidden_proto(strcmp) */
+/* Experimentally off - libc_hidden_proto(strcpy) */
+/* Experimentally off - libc_hidden_proto(strlen) */
+/* Experimentally off - libc_hidden_proto(strncpy) */
/* libc_hidden_proto(sprintf) */
libc_hidden_proto(open)
libc_hidden_proto(read)
@@ -174,13 +174,13 @@ libc_hidden_proto(close)
libc_hidden_proto(getenv)
libc_hidden_proto(tzset)
libc_hidden_proto(gettimeofday)
-libc_hidden_proto(strncasecmp)
+/* Experimentally off - libc_hidden_proto(strncasecmp) */
libc_hidden_proto(strtol)
libc_hidden_proto(strtoul)
libc_hidden_proto(nl_langinfo)
#ifdef __UCLIBC_HAS_XLOCALE__
-libc_hidden_proto(strncasecmp_l)
+/* Experimentally off - libc_hidden_proto(strncasecmp_l) */
libc_hidden_proto(strtol_l)
libc_hidden_proto(strtoul_l)
libc_hidden_proto(nl_langinfo_l)
@@ -619,7 +619,7 @@ libc_hidden_def(localtime_r)
#ifdef __UCLIBC_HAS_TM_EXTENSIONS__
-libc_hidden_proto(strnlen)
+/* Experimentally off - libc_hidden_proto(strnlen) */
struct ll_tzname_item;
diff --git a/libc/misc/ttyent/getttyent.c b/libc/misc/ttyent/getttyent.c
index 38caeb73f..e9858ffb7 100644
--- a/libc/misc/ttyent/getttyent.c
+++ b/libc/misc/ttyent/getttyent.c
@@ -39,9 +39,9 @@
#include <pthread.h>
#endif
-libc_hidden_proto(strchr)
-libc_hidden_proto(strcmp)
-libc_hidden_proto(strncmp)
+/* Experimentally off - libc_hidden_proto(strchr) */
+/* Experimentally off - libc_hidden_proto(strcmp) */
+/* Experimentally off - libc_hidden_proto(strncmp) */
libc_hidden_proto(__fsetlocking)
libc_hidden_proto(rewind)
libc_hidden_proto(fgets_unlocked)
diff --git a/libc/misc/utmp/utent.c b/libc/misc/utmp/utent.c
index ac53f1d30..d71aa312f 100644
--- a/libc/misc/utmp/utent.c
+++ b/libc/misc/utmp/utent.c
@@ -21,9 +21,9 @@
#include <string.h>
#include <utmp.h>
-libc_hidden_proto(strcmp)
-libc_hidden_proto(strdup)
-libc_hidden_proto(strncmp)
+/* Experimentally off - libc_hidden_proto(strcmp) */
+/* Experimentally off - libc_hidden_proto(strdup) */
+/* Experimentally off - libc_hidden_proto(strncmp) */
libc_hidden_proto(read)
libc_hidden_proto(write)
libc_hidden_proto(open)
diff --git a/libc/misc/utmp/wtent.c b/libc/misc/utmp/wtent.c
index 0378070e7..9430bbb19 100644
--- a/libc/misc/utmp/wtent.c
+++ b/libc/misc/utmp/wtent.c
@@ -15,8 +15,8 @@
#include <sys/file.h>
#if 0
-libc_hidden_proto(memset)
-libc_hidden_proto(strncpy)
+/* Experimentally off - libc_hidden_proto(memset) */
+/* Experimentally off - libc_hidden_proto(strncpy) */
libc_hidden_proto(updwtmp)
#endif
libc_hidden_proto(open)
diff --git a/libc/misc/wchar/wchar.c b/libc/misc/wchar/wchar.c
index 32ad41ee6..1550fa576 100644
--- a/libc/misc/wchar/wchar.c
+++ b/libc/misc/wchar/wchar.c
@@ -1268,7 +1268,7 @@ const unsigned char __iconv_codesets[] =
"\x07\x01""ASCII"; /* Must be last! (special case to save a nul) */
libc_hidden_data_def(__iconv_codesets)
-libc_hidden_proto(strcasecmp)
+/* Experimentally off - libc_hidden_proto(strcasecmp) */
static int find_codeset(const char *name)
{
diff --git a/libc/misc/wctype/_wctype.c b/libc/misc/wctype/_wctype.c
index 0f19cad04..a5624ff64 100644
--- a/libc/misc/wctype/_wctype.c
+++ b/libc/misc/wctype/_wctype.c
@@ -37,7 +37,7 @@
#include <stdint.h>
#include <bits/uClibc_uwchar.h>
-libc_hidden_proto(strcmp)
+/* Experimentally off - libc_hidden_proto(strcmp) */
libc_hidden_proto(tolower)
libc_hidden_proto(toupper)
libc_hidden_proto(towlower)
diff --git a/libc/misc/wordexp/wordexp.c b/libc/misc/wordexp/wordexp.c
index 58094dbc7..6872a65ba 100644
--- a/libc/misc/wordexp/wordexp.c
+++ b/libc/misc/wordexp/wordexp.c
@@ -35,15 +35,15 @@
#include <glob.h>
#include <wordexp.h>
-libc_hidden_proto(mempcpy)
-libc_hidden_proto(stpcpy)
-libc_hidden_proto(strchr)
-libc_hidden_proto(strcpy)
-libc_hidden_proto(strdup)
-libc_hidden_proto(strlen)
-libc_hidden_proto(strndup)
-libc_hidden_proto(strspn)
-libc_hidden_proto(strcspn)
+/* Experimentally off - libc_hidden_proto(mempcpy) */
+/* Experimentally off - libc_hidden_proto(stpcpy) */
+/* Experimentally off - libc_hidden_proto(strchr) */
+/* Experimentally off - libc_hidden_proto(strcpy) */
+/* Experimentally off - libc_hidden_proto(strdup) */
+/* Experimentally off - libc_hidden_proto(strlen) */
+/* Experimentally off - libc_hidden_proto(strndup) */
+/* Experimentally off - libc_hidden_proto(strspn) */
+/* Experimentally off - libc_hidden_proto(strcspn) */
libc_hidden_proto(setenv)
libc_hidden_proto(unsetenv)
libc_hidden_proto(waitpid)
diff --git a/libc/pwd_grp/lckpwdf.c b/libc/pwd_grp/lckpwdf.c
index f241cdffc..0b0fb471b 100644
--- a/libc/pwd_grp/lckpwdf.c
+++ b/libc/pwd_grp/lckpwdf.c
@@ -28,7 +28,7 @@
#include <paths.h>
#include <shadow.h>
-libc_hidden_proto(memset)
+/* Experimentally off - libc_hidden_proto(memset) */
libc_hidden_proto(open)
libc_hidden_proto(fcntl)
libc_hidden_proto(close)
diff --git a/libc/pwd_grp/pwd_grp.c b/libc/pwd_grp/pwd_grp.c
index 4bf5ff081..dbeed6cdd 100644
--- a/libc/pwd_grp/pwd_grp.c
+++ b/libc/pwd_grp/pwd_grp.c
@@ -37,10 +37,10 @@
#endif
#include <bits/uClibc_mutex.h>
-libc_hidden_proto(strchr)
-libc_hidden_proto(strcmp)
-libc_hidden_proto(strcpy)
-libc_hidden_proto(strlen)
+/* Experimentally off - libc_hidden_proto(strchr) */
+/* Experimentally off - libc_hidden_proto(strcmp) */
+/* Experimentally off - libc_hidden_proto(strcpy) */
+/* Experimentally off - libc_hidden_proto(strlen) */
libc_hidden_proto(strtoul)
libc_hidden_proto(rewind)
libc_hidden_proto(fgets_unlocked)
diff --git a/libc/signal/sigaction.c b/libc/signal/sigaction.c
index 14e3dc9c2..50ab640d5 100644
--- a/libc/signal/sigaction.c
+++ b/libc/signal/sigaction.c
@@ -23,7 +23,7 @@
#include <sys/syscall.h>
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
/* The difference here is that the sigaction structure used in the
kernel is not the same as we use in the libc. Therefore we must
diff --git a/libc/signal/sigempty.c b/libc/signal/sigempty.c
index e642e9335..a6136d057 100644
--- a/libc/signal/sigempty.c
+++ b/libc/signal/sigempty.c
@@ -20,7 +20,7 @@
#include <signal.h>
#include <string.h>
-libc_hidden_proto(memset)
+/* Experimentally off - libc_hidden_proto(memset) */
/* Clear all signals from SET. */
libc_hidden_proto(sigemptyset)
diff --git a/libc/signal/sigfillset.c b/libc/signal/sigfillset.c
index 83e47937d..96ab459dc 100644
--- a/libc/signal/sigfillset.c
+++ b/libc/signal/sigfillset.c
@@ -20,7 +20,7 @@
#include <signal.h>
#include <string.h>
-libc_hidden_proto(memset)
+/* Experimentally off - libc_hidden_proto(memset) */
/* Set all signals in SET. */
libc_hidden_proto(sigfillset)
diff --git a/libc/stdio/_fpmaxtostr.c b/libc/stdio/_fpmaxtostr.c
index f5632337d..2a63fda9d 100644
--- a/libc/stdio/_fpmaxtostr.c
+++ b/libc/stdio/_fpmaxtostr.c
@@ -11,7 +11,7 @@
#include <locale.h>
#include <bits/uClibc_fpmax.h>
-libc_hidden_proto(memset)
+/* Experimentally off - libc_hidden_proto(memset) */
typedef size_t (__fp_outfunc_t)(FILE *fp, intptr_t type, intptr_t len,
intptr_t buf);
diff --git a/libc/stdio/_fwrite.c b/libc/stdio/_fwrite.c
index 1e0f7ceee..ba4b02fb1 100644
--- a/libc/stdio/_fwrite.c
+++ b/libc/stdio/_fwrite.c
@@ -7,9 +7,9 @@
#include "_stdio.h"
-libc_hidden_proto(memchr)
-libc_hidden_proto(memcpy)
-libc_hidden_proto(memrchr)
+/* Experimentally off - libc_hidden_proto(memchr) */
+/* Experimentally off - libc_hidden_proto(memcpy) */
+/* Experimentally off - libc_hidden_proto(memrchr) */
#ifdef __STDIO_BUFFERS
diff --git a/libc/stdio/_scanf.c b/libc/stdio/_scanf.c
index 9bc8def55..211a8f787 100644
--- a/libc/stdio/_scanf.c
+++ b/libc/stdio/_scanf.c
@@ -77,10 +77,10 @@
#include <bits/uClibc_fpmax.h>
#endif /* __UCLIBC_HAS_FLOATS__ */
-libc_hidden_proto(memcmp)
-libc_hidden_proto(memset)
-libc_hidden_proto(strcpy)
-libc_hidden_proto(strlen)
+/* Experimentally off - libc_hidden_proto(memcmp) */
+/* Experimentally off - libc_hidden_proto(memset) */
+/* Experimentally off - libc_hidden_proto(strcpy) */
+/* Experimentally off - libc_hidden_proto(strlen) */
libc_hidden_proto(ungetc)
libc_hidden_proto(vfscanf)
libc_hidden_proto(vsscanf)
diff --git a/libc/stdio/_stdio.c b/libc/stdio/_stdio.c
index 739a061a6..d8c0ae20d 100644
--- a/libc/stdio/_stdio.c
+++ b/libc/stdio/_stdio.c
@@ -7,7 +7,7 @@
#include "_stdio.h"
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
libc_hidden_proto(isatty)
/* This is pretty much straight from uClibc, but with one important
diff --git a/libc/stdio/_uintmaxtostr.c b/libc/stdio/_uintmaxtostr.c
index 4310d6458..7a80371b8 100644
--- a/libc/stdio/_uintmaxtostr.c
+++ b/libc/stdio/_uintmaxtostr.c
@@ -11,7 +11,7 @@
#include <locale.h>
#include <bits/uClibc_uintmaxtostr.h>
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
/* Avoid using long long / and % operations to cut down dependencies on
* libgcc.a. Definitely helps on i386 at least. */
diff --git a/libc/stdio/_vfprintf.c b/libc/stdio/_vfprintf.c
index 685bb0dad..0e0f75a81 100644
--- a/libc/stdio/_vfprintf.c
+++ b/libc/stdio/_vfprintf.c
@@ -117,10 +117,10 @@
#include <bits/uClibc_uintmaxtostr.h>
#include <bits/uClibc_va_copy.h>
-libc_hidden_proto(memcpy)
-libc_hidden_proto(memset)
-libc_hidden_proto(strlen)
-libc_hidden_proto(strnlen)
+/* Experimentally off - libc_hidden_proto(memcpy) */
+/* Experimentally off - libc_hidden_proto(memset) */
+/* Experimentally off - libc_hidden_proto(strlen) */
+/* Experimentally off - libc_hidden_proto(strnlen) */
libc_hidden_proto(__glibc_strerror_r)
libc_hidden_proto(fputs_unlocked)
libc_hidden_proto(abort)
diff --git a/libc/stdio/ctermid.c b/libc/stdio/ctermid.c
index 1cb8a0845..26369d6f5 100644
--- a/libc/stdio/ctermid.c
+++ b/libc/stdio/ctermid.c
@@ -7,7 +7,7 @@
#include "_stdio.h"
-libc_hidden_proto(strcpy)
+/* Experimentally off - libc_hidden_proto(strcpy) */
char *ctermid(register char *s)
{
diff --git a/libc/stdio/fmemopen.c b/libc/stdio/fmemopen.c
index a78d56efc..eb4fa736e 100644
--- a/libc/stdio/fmemopen.c
+++ b/libc/stdio/fmemopen.c
@@ -10,7 +10,7 @@
#ifdef __USE_GNU
#include "_stdio.h"
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
libc_hidden_proto(fopencookie)
#ifndef __UCLIBC_HAS_GLIBC_CUSTOM_STREAMS__
diff --git a/libc/stdio/fputs.c b/libc/stdio/fputs.c
index 4111491d6..8a5fd4087 100644
--- a/libc/stdio/fputs.c
+++ b/libc/stdio/fputs.c
@@ -9,7 +9,7 @@
libc_hidden_proto(fputs_unlocked)
-libc_hidden_proto(strlen)
+/* Experimentally off - libc_hidden_proto(strlen) */
libc_hidden_proto(fwrite_unlocked)
/* Note: The standard says fputs returns a nonnegative number on
diff --git a/libc/stdio/fread.c b/libc/stdio/fread.c
index c603a9d2e..d8b04f733 100644
--- a/libc/stdio/fread.c
+++ b/libc/stdio/fread.c
@@ -11,7 +11,7 @@ libc_hidden_proto(fread_unlocked)
#ifdef __DO_UNLOCKED
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
libc_hidden_proto(fflush_unlocked)
size_t fread_unlocked(void * __restrict ptr, size_t size, size_t nmemb,
diff --git a/libc/stdio/old_vfprintf.c b/libc/stdio/old_vfprintf.c
index f81ef8688..57f607142 100644
--- a/libc/stdio/old_vfprintf.c
+++ b/libc/stdio/old_vfprintf.c
@@ -145,9 +145,9 @@
#include <pthread.h>
#endif /* __UCLIBC_HAS_THREADS__ */
-libc_hidden_proto(strlen)
-libc_hidden_proto(strnlen)
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(strlen) */
+/* Experimentally off - libc_hidden_proto(strnlen) */
+/* Experimentally off - libc_hidden_proto(memcpy) */
libc_hidden_proto(putc_unlocked)
libc_hidden_proto(__fputc_unlocked)
libc_hidden_proto(__glibc_strerror_r)
diff --git a/libc/stdio/open_memstream.c b/libc/stdio/open_memstream.c
index 25c2f9f61..71c437c78 100644
--- a/libc/stdio/open_memstream.c
+++ b/libc/stdio/open_memstream.c
@@ -10,8 +10,8 @@
#ifdef __USE_GNU
#include "_stdio.h"
-libc_hidden_proto(memcpy)
-libc_hidden_proto(memset)
+/* Experimentally off - libc_hidden_proto(memcpy) */
+/* Experimentally off - libc_hidden_proto(memset) */
libc_hidden_proto(fopencookie)
#ifndef __UCLIBC_HAS_GLIBC_CUSTOM_STREAMS__
diff --git a/libc/stdio/tempnam.c b/libc/stdio/tempnam.c
index 43cbf781b..3673f4bda 100644
--- a/libc/stdio/tempnam.c
+++ b/libc/stdio/tempnam.c
@@ -20,7 +20,7 @@
#include <string.h>
#include "../misc/internals/tempname.h"
-libc_hidden_proto(strdup)
+/* Experimentally off - libc_hidden_proto(strdup) */
/* Generate a unique temporary filename using up to five characters of PFX
if it is not NULL. The directory to put this file in is searched for
diff --git a/libc/stdio/tmpnam.c b/libc/stdio/tmpnam.c
index bc4ffeb6a..8df6ff57f 100644
--- a/libc/stdio/tmpnam.c
+++ b/libc/stdio/tmpnam.c
@@ -20,7 +20,7 @@
#include <string.h>
#include "../misc/internals/tempname.h"
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
static char tmpnam_buffer[L_tmpnam];
diff --git a/libc/stdlib/_strtod.c b/libc/stdlib/_strtod.c
index 219d0d051..585e4bd62 100644
--- a/libc/stdlib/_strtod.c
+++ b/libc/stdlib/_strtod.c
@@ -215,7 +215,7 @@ __fpmax_t attribute_hidden __strtofpmax(const Wchar *str, Wchar **endptr, int ex
#else /* defined(__UCLIBC_HAS_XLOCALE__) && !defined(__UCLIBC_DO_XLOCALE) */
-libc_hidden_proto(memcmp)
+/* Experimentally off - libc_hidden_proto(memcmp) */
__fpmax_t attribute_hidden __XL_NPP(__strtofpmax)(const Wchar *str, Wchar **endptr, int exponent_power
__LOCALE_PARAM )
diff --git a/libc/stdlib/abort.c b/libc/stdlib/abort.c
index 6e1806eae..2146cc3db 100644
--- a/libc/stdlib/abort.c
+++ b/libc/stdlib/abort.c
@@ -29,7 +29,7 @@ Cambridge, MA 02139, USA. */
libc_hidden_proto(abort)
-libc_hidden_proto(memset)
+/* Experimentally off - libc_hidden_proto(memset) */
libc_hidden_proto(sigaction)
libc_hidden_proto(sigprocmask)
libc_hidden_proto(raise)
diff --git a/libc/stdlib/bsd_getpt.c b/libc/stdlib/bsd_getpt.c
index 9b885c4e5..9b93448bc 100644
--- a/libc/stdlib/bsd_getpt.c
+++ b/libc/stdlib/bsd_getpt.c
@@ -23,7 +23,7 @@
#include <unistd.h>
libc_hidden_proto(open)
-libc_hidden_proto(mempcpy)
+/* Experimentally off - libc_hidden_proto(mempcpy) */
/* Prefix for master pseudo terminal nodes. */
#define _PATH_PTY "/dev/pty"
diff --git a/libc/stdlib/getenv.c b/libc/stdlib/getenv.c
index c7940f398..230ec0051 100644
--- a/libc/stdlib/getenv.c
+++ b/libc/stdlib/getenv.c
@@ -9,8 +9,8 @@
#include <stdlib.h>
libc_hidden_proto(getenv)
-libc_hidden_proto(memcmp)
-libc_hidden_proto(strlen)
+/* Experimentally off - libc_hidden_proto(memcmp) */
+/* Experimentally off - libc_hidden_proto(strlen) */
/* IEEE Std 1003.1-2001 says getenv need not be thread safe, so
* don't bother locking access to __environ */
diff --git a/libc/stdlib/malloc-simple/alloc.c b/libc/stdlib/malloc-simple/alloc.c
index 6689ef409..dfeabb6d9 100644
--- a/libc/stdlib/malloc-simple/alloc.c
+++ b/libc/stdlib/malloc-simple/alloc.c
@@ -17,7 +17,7 @@
#include <errno.h>
#include <sys/mman.h>
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
/*libc_hidden_proto(memset)*/
libc_hidden_proto(mmap)
libc_hidden_proto(munmap)
diff --git a/libc/stdlib/malloc-standard/calloc.c b/libc/stdlib/malloc-standard/calloc.c
index b94fb372b..80ba3d04a 100644
--- a/libc/stdlib/malloc-standard/calloc.c
+++ b/libc/stdlib/malloc-standard/calloc.c
@@ -16,7 +16,7 @@
#include "malloc.h"
-libc_hidden_proto(memset)
+/* Experimentally off - libc_hidden_proto(memset) */
/* ------------------------------ calloc ------------------------------ */
void* calloc(size_t n_elements, size_t elem_size)
diff --git a/libc/stdlib/malloc-standard/realloc.c b/libc/stdlib/malloc-standard/realloc.c
index ef436da0d..41cae43d1 100644
--- a/libc/stdlib/malloc-standard/realloc.c
+++ b/libc/stdlib/malloc-standard/realloc.c
@@ -17,7 +17,7 @@
#include "malloc.h"
libc_hidden_proto(mremap)
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
/* ------------------------------ realloc ------------------------------ */
void* realloc(void* oldmem, size_t bytes)
diff --git a/libc/stdlib/malloc/calloc.c b/libc/stdlib/malloc/calloc.c
index 5925a9e0a..79e6ec6c7 100644
--- a/libc/stdlib/malloc/calloc.c
+++ b/libc/stdlib/malloc/calloc.c
@@ -22,7 +22,7 @@
#include <string.h>
#include <errno.h>
-libc_hidden_proto(memset)
+/* Experimentally off - libc_hidden_proto(memset) */
void * calloc(size_t nmemb, size_t lsize)
{
diff --git a/libc/stdlib/malloc/realloc.c b/libc/stdlib/malloc/realloc.c
index ec57b874e..948326762 100644
--- a/libc/stdlib/malloc/realloc.c
+++ b/libc/stdlib/malloc/realloc.c
@@ -15,7 +15,7 @@
#include <string.h>
#include <errno.h>
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
#include "malloc.h"
#include "heap.h"
diff --git a/libc/stdlib/ptsname.c b/libc/stdlib/ptsname.c
index cff743200..1fd516234 100644
--- a/libc/stdlib/ptsname.c
+++ b/libc/stdlib/ptsname.c
@@ -29,9 +29,9 @@
#include <unistd.h>
#include <bits/uClibc_uintmaxtostr.h>
-libc_hidden_proto(strcat)
-libc_hidden_proto(strcpy)
-libc_hidden_proto(strlen)
+/* Experimentally off - libc_hidden_proto(strcat) */
+/* Experimentally off - libc_hidden_proto(strcpy) */
+/* Experimentally off - libc_hidden_proto(strlen) */
libc_hidden_proto(isatty)
libc_hidden_proto(ioctl)
libc_hidden_proto(fstat)
diff --git a/libc/stdlib/realpath.c b/libc/stdlib/realpath.c
index e23c23c82..557d74555 100644
--- a/libc/stdlib/realpath.c
+++ b/libc/stdlib/realpath.c
@@ -22,9 +22,9 @@
#include <sys/stat.h> /* for S_IFLNK */
-libc_hidden_proto(strcat)
-libc_hidden_proto(strcpy)
-libc_hidden_proto(strlen)
+/* Experimentally off - libc_hidden_proto(strcat) */
+/* Experimentally off - libc_hidden_proto(strcpy) */
+/* Experimentally off - libc_hidden_proto(strlen) */
libc_hidden_proto(readlink)
libc_hidden_proto(getcwd)
diff --git a/libc/stdlib/seed48_r.c b/libc/stdlib/seed48_r.c
index c88d0f23e..3769e0fa7 100644
--- a/libc/stdlib/seed48_r.c
+++ b/libc/stdlib/seed48_r.c
@@ -21,7 +21,7 @@
#include <string.h>
#include <limits.h>
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
libc_hidden_proto(seed48_r)
int seed48_r (unsigned short int seed16v[3], struct drand48_data *buffer)
diff --git a/libc/stdlib/setenv.c b/libc/stdlib/setenv.c
index 896cf7fc2..833bd8fcd 100644
--- a/libc/stdlib/setenv.c
+++ b/libc/stdlib/setenv.c
@@ -25,11 +25,11 @@
#include <string.h>
#include <unistd.h>
-libc_hidden_proto(memcpy)
-libc_hidden_proto(strchr)
-libc_hidden_proto(strlen)
-libc_hidden_proto(strncmp)
-libc_hidden_proto(strndup)
+/* Experimentally off - libc_hidden_proto(memcpy) */
+/* Experimentally off - libc_hidden_proto(strchr) */
+/* Experimentally off - libc_hidden_proto(strlen) */
+/* Experimentally off - libc_hidden_proto(strncmp) */
+/* Experimentally off - libc_hidden_proto(strndup) */
libc_hidden_proto(unsetenv)
#include <bits/uClibc_mutex.h>
diff --git a/libc/stdlib/unix_grantpt.c b/libc/stdlib/unix_grantpt.c
index f88a54bc0..d1eef9efd 100644
--- a/libc/stdlib/unix_grantpt.c
+++ b/libc/stdlib/unix_grantpt.c
@@ -30,7 +30,7 @@
#include <unistd.h>
#include "pty-private.h"
-libc_hidden_proto(memchr)
+/* Experimentally off - libc_hidden_proto(memchr) */
libc_hidden_proto(getgid)
libc_hidden_proto(getuid)
libc_hidden_proto(setrlimit)
diff --git a/libc/string/__xpg_strerror_r.c b/libc/string/__xpg_strerror_r.c
index f07237287..ce186a061 100644
--- a/libc/string/__xpg_strerror_r.c
+++ b/libc/string/__xpg_strerror_r.c
@@ -16,8 +16,8 @@
#undef strerror_r
libc_hidden_proto(__xpg_strerror_r)
-libc_hidden_proto(memcpy)
-libc_hidden_proto(strlen)
+/* Experimentally off - libc_hidden_proto(memcpy) */
+/* Experimentally off - libc_hidden_proto(strlen) */
#ifdef __UCLIBC_HAS_ERRNO_MESSAGES__
diff --git a/libc/string/_collate.c b/libc/string/_collate.c
index 3009e4ebf..64b5d9608 100644
--- a/libc/string/_collate.c
+++ b/libc/string/_collate.c
@@ -19,10 +19,10 @@
#include <errno.h>
#include <assert.h>
-libc_hidden_proto(memset)
-libc_hidden_proto(memcpy)
-libc_hidden_proto(strlcpy)
-libc_hidden_proto(strcmp)
+/* Experimentally off - libc_hidden_proto(memset) */
+/* Experimentally off - libc_hidden_proto(memcpy) */
+/* Experimentally off - libc_hidden_proto(strlcpy) */
+/* Experimentally off - libc_hidden_proto(strcmp) */
#ifdef WANT_WIDE
libc_hidden_proto(wcsxfrm)
libc_hidden_proto(wcscmp)
diff --git a/libc/string/basename.c b/libc/string/basename.c
index 739eaec56..a076c20e9 100644
--- a/libc/string/basename.c
+++ b/libc/string/basename.c
@@ -8,7 +8,7 @@
#include "_string.h"
#ifdef __USE_GNU
-libc_hidden_proto(basename)
+/* Experimentally off - libc_hidden_proto(basename) */
char *basename(const char *path)
{
diff --git a/libc/string/bcopy.c b/libc/string/bcopy.c
index bd233cb9c..3aa7eab1e 100644
--- a/libc/string/bcopy.c
+++ b/libc/string/bcopy.c
@@ -9,7 +9,7 @@
#ifdef __UCLIBC_SUSV3_LEGACY__
-libc_hidden_proto(memmove)
+/* Experimentally off - libc_hidden_proto(memmove) */
void bcopy(const void *s2, void *s1, size_t n)
{
diff --git a/libc/string/bzero.c b/libc/string/bzero.c
index 519695cab..7498f795f 100644
--- a/libc/string/bzero.c
+++ b/libc/string/bzero.c
@@ -9,7 +9,7 @@
#ifdef __UCLIBC_SUSV3_LEGACY__
-libc_hidden_proto(memset)
+/* Experimentally off - libc_hidden_proto(memset) */
void bzero(void *s, size_t n)
{
diff --git a/libc/string/cris/memcpy.c b/libc/string/cris/memcpy.c
index a00688ab0..0cce37a30 100644
--- a/libc/string/cris/memcpy.c
+++ b/libc/string/cris/memcpy.c
@@ -66,7 +66,7 @@
void *memcpy(void *, const void *, unsigned int);
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
void *memcpy(void *pdst,
const void *psrc,
unsigned int pn)
diff --git a/libc/string/cris/memmove.c b/libc/string/cris/memmove.c
index 437637078..b6620afe0 100644
--- a/libc/string/cris/memmove.c
+++ b/libc/string/cris/memmove.c
@@ -27,7 +27,7 @@
#include "memcopy.h"
#include "../generic/pagecopy.h"
-libc_hidden_proto(memmove)
+/* Experimentally off - libc_hidden_proto(memmove) */
void *memmove (void *dest, const void *src, size_t len)
{
unsigned long int dstp = (long int) dest;
diff --git a/libc/string/cris/memset.c b/libc/string/cris/memset.c
index 2d1602c5d..9cc959a33 100644
--- a/libc/string/cris/memset.c
+++ b/libc/string/cris/memset.c
@@ -59,7 +59,7 @@
void *memset(void *, int, unsigned long);
-libc_hidden_proto(memset)
+/* Experimentally off - libc_hidden_proto(memset) */
void *memset(void *pdst,
int c,
unsigned long plen)
diff --git a/libc/string/cris/strcpy.c b/libc/string/cris/strcpy.c
index 0af25253e..955a990b7 100644
--- a/libc/string/cris/strcpy.c
+++ b/libc/string/cris/strcpy.c
@@ -6,7 +6,7 @@
#include <string.h>
-libc_hidden_proto(strcpy)
+/* Experimentally off - libc_hidden_proto(strcpy) */
char *strcpy(char *dest, const char *src)
{
char *ret = dest;
diff --git a/libc/string/cris/strncpy.c b/libc/string/cris/strncpy.c
index 93a6608bc..3f2775bdd 100644
--- a/libc/string/cris/strncpy.c
+++ b/libc/string/cris/strncpy.c
@@ -6,9 +6,9 @@
#include <string.h>
-libc_hidden_proto(memset)
+/* Experimentally off - libc_hidden_proto(memset) */
-libc_hidden_proto(strncpy)
+/* Experimentally off - libc_hidden_proto(strncpy) */
char *strncpy(char *dest, const char *src, size_t count)
{
char *ret = dest;
diff --git a/libc/string/ffs.c b/libc/string/ffs.c
index 9a68dc302..0857a3220 100644
--- a/libc/string/ffs.c
+++ b/libc/string/ffs.c
@@ -10,7 +10,7 @@
#include "_string.h"
#include <strings.h>
-libc_hidden_proto(ffs)
+/* Experimentally off - libc_hidden_proto(ffs) */
int ffs(int i)
{
diff --git a/libc/string/frv/memset.S b/libc/string/frv/memset.S
index 4e64550e4..477597dcd 100644
--- a/libc/string/frv/memset.S
+++ b/libc/string/frv/memset.S
@@ -155,4 +155,4 @@ memset:
bralr
.size memset, .-memset
-libc_hidden_proto(memset)
+/* Experimentally off - libc_hidden_proto(memset) */
diff --git a/libc/string/generic/memchr.c b/libc/string/generic/memchr.c
index 4b40e4d65..3c7c997bc 100644
--- a/libc/string/generic/memchr.c
+++ b/libc/string/generic/memchr.c
@@ -25,7 +25,7 @@
#include <stdlib.h>
#include <limits.h>
-libc_hidden_proto(memchr)
+/* Experimentally off - libc_hidden_proto(memchr) */
libc_hidden_proto(abort)
#include "memcopy.h"
diff --git a/libc/string/generic/memcmp.c b/libc/string/generic/memcmp.c
index b0d05cf8a..e9767edef 100644
--- a/libc/string/generic/memcmp.c
+++ b/libc/string/generic/memcmp.c
@@ -21,7 +21,7 @@
#include <string.h>
#include "memcopy.h"
-libc_hidden_proto(memcmp)
+/* Experimentally off - libc_hidden_proto(memcmp) */
#include <endian.h>
diff --git a/libc/string/generic/memcpy.c b/libc/string/generic/memcpy.c
index 9d8764105..fa6606ceb 100644
--- a/libc/string/generic/memcpy.c
+++ b/libc/string/generic/memcpy.c
@@ -23,7 +23,7 @@
#include "memcopy.h"
#include "pagecopy.h"
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
/* _wordcopy_fwd_aligned -- Copy block beginning at SRCP to
block beginning at DSTP with LEN `op_t' words (not LEN bytes!).
diff --git a/libc/string/generic/memmem.c b/libc/string/generic/memmem.c
index 5d4e6f151..c75bb2426 100644
--- a/libc/string/generic/memmem.c
+++ b/libc/string/generic/memmem.c
@@ -20,8 +20,8 @@
#include <stddef.h>
#ifdef __USE_GNU
-libc_hidden_proto(memmem)
-libc_hidden_proto(memcmp)
+/* Experimentally off - libc_hidden_proto(memmem) */
+/* Experimentally off - libc_hidden_proto(memcmp) */
/* Return the first occurrence of NEEDLE in HAYSTACK. */
void *memmem (const void *haystack, size_t haystack_len,
diff --git a/libc/string/generic/memmove.c b/libc/string/generic/memmove.c
index dca74ae74..b2a017b16 100644
--- a/libc/string/generic/memmove.c
+++ b/libc/string/generic/memmove.c
@@ -24,8 +24,8 @@
#include "memcopy.h"
#include "pagecopy.h"
-libc_hidden_proto(memmove)
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memmove) */
+/* Experimentally off - libc_hidden_proto(memcpy) */
static void _wordcopy_bwd_aligned (long int dstp, long int srcp, size_t len)
{
diff --git a/libc/string/generic/mempcpy.c b/libc/string/generic/mempcpy.c
index c80caac8f..8d7356486 100644
--- a/libc/string/generic/mempcpy.c
+++ b/libc/string/generic/mempcpy.c
@@ -8,8 +8,8 @@
#include <string.h>
#ifdef __USE_GNU
-libc_hidden_proto(mempcpy)
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(mempcpy) */
+/* Experimentally off - libc_hidden_proto(memcpy) */
void *mempcpy (void *dstpp, const void *srcpp, size_t len)
{
diff --git a/libc/string/generic/memrchr.c b/libc/string/generic/memrchr.c
index 43439d5ce..9ab805cf7 100644
--- a/libc/string/generic/memrchr.c
+++ b/libc/string/generic/memrchr.c
@@ -27,7 +27,7 @@
#include <limits.h>
#ifdef __USE_GNU
-libc_hidden_proto(memrchr)
+/* Experimentally off - libc_hidden_proto(memrchr) */
libc_hidden_proto(abort)
#include "memcopy.h"
diff --git a/libc/string/generic/memset.c b/libc/string/generic/memset.c
index 50803cac5..62cc36fe3 100644
--- a/libc/string/generic/memset.c
+++ b/libc/string/generic/memset.c
@@ -19,7 +19,7 @@
#include <string.h>
#include "memcopy.h"
-libc_hidden_proto(memset)
+/* Experimentally off - libc_hidden_proto(memset) */
void *memset (void *dstpp, int c, size_t len)
{
long int dstp = (long int) dstpp;
diff --git a/libc/string/generic/rawmemchr.c b/libc/string/generic/rawmemchr.c
index 6bf245265..f8b97a61d 100644
--- a/libc/string/generic/rawmemchr.c
+++ b/libc/string/generic/rawmemchr.c
@@ -26,7 +26,7 @@
#include <limits.h>
#ifdef __USE_GNU
-libc_hidden_proto(rawmemchr)
+/* Experimentally off - libc_hidden_proto(rawmemchr) */
libc_hidden_proto(abort)
#include "memcopy.h"
diff --git a/libc/string/generic/strcat.c b/libc/string/generic/strcat.c
index 53c4d0d9e..e00494038 100644
--- a/libc/string/generic/strcat.c
+++ b/libc/string/generic/strcat.c
@@ -19,7 +19,7 @@
#include <string.h>
#include "memcopy.h"
-libc_hidden_proto(strcat)
+/* Experimentally off - libc_hidden_proto(strcat) */
/* Append SRC on the end of DEST. */
char *strcat (char *dest, const char *src)
{
diff --git a/libc/string/generic/strchr.c b/libc/string/generic/strchr.c
index 985b78b5a..66aed1e25 100644
--- a/libc/string/generic/strchr.c
+++ b/libc/string/generic/strchr.c
@@ -24,7 +24,7 @@
#include <string.h>
#include <stdlib.h>
-libc_hidden_proto(strchr)
+/* Experimentally off - libc_hidden_proto(strchr) */
libc_hidden_proto(abort)
#include "memcopy.h"
diff --git a/libc/string/generic/strchrnul.c b/libc/string/generic/strchrnul.c
index 17e32ab44..72cab2891 100644
--- a/libc/string/generic/strchrnul.c
+++ b/libc/string/generic/strchrnul.c
@@ -25,7 +25,7 @@
#include <stdlib.h>
#ifdef __USE_GNU
-libc_hidden_proto(strchrnul)
+/* Experimentally off - libc_hidden_proto(strchrnul) */
libc_hidden_proto(abort)
#include "memcopy.h"
diff --git a/libc/string/generic/strcmp.c b/libc/string/generic/strcmp.c
index 21c896986..50acd3548 100644
--- a/libc/string/generic/strcmp.c
+++ b/libc/string/generic/strcmp.c
@@ -20,7 +20,7 @@
#include "memcopy.h"
-libc_hidden_proto(strcmp)
+/* Experimentally off - libc_hidden_proto(strcmp) */
/* Compare S1 and S2, returning less than, equal to or
greater than zero if S1 is lexicographically less than,
equal to or greater than S2. */
@@ -44,7 +44,7 @@ int strcmp (const char *p1, const char *p2)
libc_hidden_weak(strcmp)
#ifndef __UCLIBC_HAS_LOCALE__
-libc_hidden_proto(strcoll)
+/* Experimentally off - libc_hidden_proto(strcoll) */
strong_alias(strcmp,strcoll)
libc_hidden_def(strcoll)
#endif
diff --git a/libc/string/generic/strcpy.c b/libc/string/generic/strcpy.c
index 7e558ead1..99e077139 100644
--- a/libc/string/generic/strcpy.c
+++ b/libc/string/generic/strcpy.c
@@ -22,7 +22,7 @@
#include "memcopy.h"
#include "bp-checks.h"
-libc_hidden_proto(strcpy)
+/* Experimentally off - libc_hidden_proto(strcpy) */
/* Copy SRC to DEST. */
char *strcpy (char *dest, const char *src)
{
diff --git a/libc/string/generic/strcspn.c b/libc/string/generic/strcspn.c
index 1b5e465ea..b65b3b995 100644
--- a/libc/string/generic/strcspn.c
+++ b/libc/string/generic/strcspn.c
@@ -18,8 +18,8 @@
#include <string.h>
-libc_hidden_proto(strcspn)
-libc_hidden_proto(strchr)
+/* Experimentally off - libc_hidden_proto(strcspn) */
+/* Experimentally off - libc_hidden_proto(strchr) */
/* Return the length of the maximum initial segment of S
which contains no characters from REJECT. */
diff --git a/libc/string/generic/strlen.c b/libc/string/generic/strlen.c
index 7e9b12fb9..764dae18d 100644
--- a/libc/string/generic/strlen.c
+++ b/libc/string/generic/strlen.c
@@ -22,7 +22,7 @@
#include <string.h>
#include <stdlib.h>
-libc_hidden_proto(strlen)
+/* Experimentally off - libc_hidden_proto(strlen) */
libc_hidden_proto(abort)
/* Return the length of the null-terminated string STR. Scan for
diff --git a/libc/string/generic/strncat.c b/libc/string/generic/strncat.c
index 9e0dfcd78..8e3423e49 100644
--- a/libc/string/generic/strncat.c
+++ b/libc/string/generic/strncat.c
@@ -20,7 +20,7 @@
#include "memcopy.h"
-libc_hidden_proto(strncat)
+/* Experimentally off - libc_hidden_proto(strncat) */
char *strncat (char *s1, const char *s2, size_t n)
{
reg_char c;
diff --git a/libc/string/generic/strncmp.c b/libc/string/generic/strncmp.c
index 12e0e4d17..c49f36d8b 100644
--- a/libc/string/generic/strncmp.c
+++ b/libc/string/generic/strncmp.c
@@ -19,7 +19,7 @@
#include <string.h>
#include "memcopy.h"
-libc_hidden_proto(strncmp)
+/* Experimentally off - libc_hidden_proto(strncmp) */
/* Compare no more than N characters of S1 and S2,
returning less than, equal to or greater than zero
if S1 is lexicographically less than, equal to or
diff --git a/libc/string/generic/strncpy.c b/libc/string/generic/strncpy.c
index 4b0b0894e..d2d693f2b 100644
--- a/libc/string/generic/strncpy.c
+++ b/libc/string/generic/strncpy.c
@@ -19,7 +19,7 @@
#include <string.h>
#include "memcopy.h"
-libc_hidden_proto(strncpy)
+/* Experimentally off - libc_hidden_proto(strncpy) */
char *strncpy (char *s1, const char *s2, size_t n)
{
reg_char c;
diff --git a/libc/string/generic/strnlen.c b/libc/string/generic/strnlen.c
index 3156e469a..d9ba76129 100644
--- a/libc/string/generic/strnlen.c
+++ b/libc/string/generic/strnlen.c
@@ -25,7 +25,7 @@
#include <stdlib.h>
#ifdef __USE_GNU
-libc_hidden_proto(strnlen)
+/* Experimentally off - libc_hidden_proto(strnlen) */
libc_hidden_proto(abort)
/* Find the length of S, but scan at most MAXLEN characters. If no
diff --git a/libc/string/generic/strrchr.c b/libc/string/generic/strrchr.c
index fe7118a49..c85707241 100644
--- a/libc/string/generic/strrchr.c
+++ b/libc/string/generic/strrchr.c
@@ -18,8 +18,8 @@
#include <string.h>
-libc_hidden_proto(strrchr)
-libc_hidden_proto(strchr)
+/* Experimentally off - libc_hidden_proto(strrchr) */
+/* Experimentally off - libc_hidden_proto(strchr) */
/* Find the last occurrence of C in S. */
char *strrchr (const char *s, int c)
diff --git a/libc/string/generic/strsep.c b/libc/string/generic/strsep.c
index 5cb1779d2..e02e57068 100644
--- a/libc/string/generic/strsep.c
+++ b/libc/string/generic/strsep.c
@@ -20,10 +20,10 @@
#ifdef __USE_BSD
-libc_hidden_proto(strchr)
-libc_hidden_proto(strpbrk)
+/* Experimentally off - libc_hidden_proto(strchr) */
+/* Experimentally off - libc_hidden_proto(strpbrk) */
-libc_hidden_proto(strsep)
+/* Experimentally off - libc_hidden_proto(strsep) */
char *strsep (char **stringp, const char *delim)
{
char *begin, *end;
diff --git a/libc/string/generic/strspn.c b/libc/string/generic/strspn.c
index a194fdc7d..010567744 100644
--- a/libc/string/generic/strspn.c
+++ b/libc/string/generic/strspn.c
@@ -18,7 +18,7 @@
#include <string.h>
-libc_hidden_proto(strspn)
+/* Experimentally off - libc_hidden_proto(strspn) */
/* Return the length of the maximum initial segment
of S which contains only characters in ACCEPT. */
size_t strspn (const char *s, const char *accept)
diff --git a/libc/string/generic/strstr.c b/libc/string/generic/strstr.c
index f151a820a..c12dceb33 100644
--- a/libc/string/generic/strstr.c
+++ b/libc/string/generic/strstr.c
@@ -28,7 +28,7 @@
#include <string.h>
-libc_hidden_proto(strstr)
+/* Experimentally off - libc_hidden_proto(strstr) */
typedef unsigned chartype;
diff --git a/libc/string/generic/strtok_r.c b/libc/string/generic/strtok_r.c
index bae394a80..d082d226e 100644
--- a/libc/string/generic/strtok_r.c
+++ b/libc/string/generic/strtok_r.c
@@ -19,15 +19,15 @@
#include <string.h>
-libc_hidden_proto(strtok_r)
-libc_hidden_proto(strspn)
-libc_hidden_proto(strpbrk)
+/* Experimentally off - libc_hidden_proto(strtok_r) */
+/* Experimentally off - libc_hidden_proto(strspn) */
+/* Experimentally off - libc_hidden_proto(strpbrk) */
#ifdef __USE_GNU
# define __rawmemchr rawmemchr
-libc_hidden_proto(rawmemchr)
+/* Experimentally off - libc_hidden_proto(rawmemchr) */
#else
# define __rawmemchr strchr
-libc_hidden_proto(strchr)
+/* Experimentally off - libc_hidden_proto(strchr) */
#endif
/* Parse S into tokens separated by characters in DELIM.
diff --git a/libc/string/i386/memchr.c b/libc/string/i386/memchr.c
index 229d42919..fe4537914 100644
--- a/libc/string/i386/memchr.c
+++ b/libc/string/i386/memchr.c
@@ -32,7 +32,7 @@
#include <string.h>
-libc_hidden_proto(memchr)
+/* Experimentally off - libc_hidden_proto(memchr) */
void *memchr(const void *cs, int c, size_t count)
{
int d0;
diff --git a/libc/string/i386/memcpy.c b/libc/string/i386/memcpy.c
index a2b8d3d8c..285583f3b 100644
--- a/libc/string/i386/memcpy.c
+++ b/libc/string/i386/memcpy.c
@@ -32,7 +32,7 @@
#include <string.h>
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
void *memcpy(void * to, const void * from, size_t n)
{
int d0, d1, d2;
diff --git a/libc/string/i386/memmove.c b/libc/string/i386/memmove.c
index a26fe2be1..a924efcbc 100644
--- a/libc/string/i386/memmove.c
+++ b/libc/string/i386/memmove.c
@@ -32,7 +32,7 @@
#include <string.h>
-libc_hidden_proto(memmove)
+/* Experimentally off - libc_hidden_proto(memmove) */
void *memmove(void *dest, const void *src, size_t n)
{
int d0, d1, d2;
diff --git a/libc/string/i386/memset.c b/libc/string/i386/memset.c
index eea48040a..bbaa45215 100644
--- a/libc/string/i386/memset.c
+++ b/libc/string/i386/memset.c
@@ -32,7 +32,7 @@
#include <string.h>
-libc_hidden_proto(memset)
+/* Experimentally off - libc_hidden_proto(memset) */
void *memset(void *s, int c, size_t count)
{
int d0, d1;
diff --git a/libc/string/i386/strcat.c b/libc/string/i386/strcat.c
index e0b1f3b51..2cf0237a6 100644
--- a/libc/string/i386/strcat.c
+++ b/libc/string/i386/strcat.c
@@ -32,7 +32,7 @@
#include <string.h>
-libc_hidden_proto(strcat)
+/* Experimentally off - libc_hidden_proto(strcat) */
char *strcat(char * dest, const char * src)
{
int d0, d1, d2, d3;
diff --git a/libc/string/i386/strchr.c b/libc/string/i386/strchr.c
index 7568d48db..46b1dfb6e 100644
--- a/libc/string/i386/strchr.c
+++ b/libc/string/i386/strchr.c
@@ -32,7 +32,7 @@
#include <string.h>
-libc_hidden_proto(strchr)
+/* Experimentally off - libc_hidden_proto(strchr) */
char *strchr(const char *s, int c)
{
int d0;
diff --git a/libc/string/i386/strcmp.c b/libc/string/i386/strcmp.c
index 47635d817..eff230c5c 100644
--- a/libc/string/i386/strcmp.c
+++ b/libc/string/i386/strcmp.c
@@ -32,7 +32,7 @@
#include <string.h>
-libc_hidden_proto(strcmp)
+/* Experimentally off - libc_hidden_proto(strcmp) */
int strcmp(const char *cs, const char *ct)
{
int d0, d1;
@@ -55,7 +55,7 @@ int strcmp(const char *cs, const char *ct)
libc_hidden_def(strcmp)
#ifndef __UCLIBC_HAS_LOCALE__
-libc_hidden_proto(strcoll)
+/* Experimentally off - libc_hidden_proto(strcoll) */
strong_alias(strcmp,strcoll)
libc_hidden_def(strcoll)
#endif
diff --git a/libc/string/i386/strcpy.c b/libc/string/i386/strcpy.c
index 9e2b81009..09065a9b7 100644
--- a/libc/string/i386/strcpy.c
+++ b/libc/string/i386/strcpy.c
@@ -32,7 +32,7 @@
#include <string.h>
-libc_hidden_proto(strcpy)
+/* Experimentally off - libc_hidden_proto(strcpy) */
char *strcpy(char * dest, const char * src)
{
int d0, d1, d2;
diff --git a/libc/string/i386/strlen.c b/libc/string/i386/strlen.c
index f0767b600..61a178393 100644
--- a/libc/string/i386/strlen.c
+++ b/libc/string/i386/strlen.c
@@ -32,7 +32,7 @@
#include <string.h>
-libc_hidden_proto(strlen)
+/* Experimentally off - libc_hidden_proto(strlen) */
size_t strlen(const char *s)
{
int d0;
diff --git a/libc/string/i386/strncat.c b/libc/string/i386/strncat.c
index c1061421e..5849db3b3 100644
--- a/libc/string/i386/strncat.c
+++ b/libc/string/i386/strncat.c
@@ -32,7 +32,7 @@
#include <string.h>
-libc_hidden_proto(strncat)
+/* Experimentally off - libc_hidden_proto(strncat) */
char *strncat(char * dest,
const char * src, size_t count)
{
diff --git a/libc/string/i386/strncmp.c b/libc/string/i386/strncmp.c
index d716789c3..a14bb503b 100644
--- a/libc/string/i386/strncmp.c
+++ b/libc/string/i386/strncmp.c
@@ -32,7 +32,7 @@
#include <string.h>
-libc_hidden_proto(strncmp)
+/* Experimentally off - libc_hidden_proto(strncmp) */
int strncmp(const char *cs, const char *ct, size_t count)
{
register int __res;
diff --git a/libc/string/i386/strncpy.c b/libc/string/i386/strncpy.c
index c061fe37e..76aa6ae1b 100644
--- a/libc/string/i386/strncpy.c
+++ b/libc/string/i386/strncpy.c
@@ -32,7 +32,7 @@
#include <string.h>
-libc_hidden_proto(strncpy)
+/* Experimentally off - libc_hidden_proto(strncpy) */
char *strncpy(char * dest, const char * src, size_t count)
{
int d0, d1, d2, d3;
diff --git a/libc/string/i386/strnlen.c b/libc/string/i386/strnlen.c
index 77b5c7568..02c72f530 100644
--- a/libc/string/i386/strnlen.c
+++ b/libc/string/i386/strnlen.c
@@ -33,7 +33,7 @@
#include <string.h>
#ifdef __USE_GNU
-libc_hidden_proto(strnlen)
+/* Experimentally off - libc_hidden_proto(strnlen) */
size_t strnlen(const char *s, size_t count)
{
int d0;
diff --git a/libc/string/i386/strrchr.c b/libc/string/i386/strrchr.c
index e3b2df6fb..ef378685b 100644
--- a/libc/string/i386/strrchr.c
+++ b/libc/string/i386/strrchr.c
@@ -32,7 +32,7 @@
#include <string.h>
-libc_hidden_proto(strrchr)
+/* Experimentally off - libc_hidden_proto(strrchr) */
char *strrchr(const char *s, int c)
{
int d0, d1;
diff --git a/libc/string/memcmp.c b/libc/string/memcmp.c
index 377a8d692..762fc23c1 100644
--- a/libc/string/memcmp.c
+++ b/libc/string/memcmp.c
@@ -10,7 +10,7 @@
#ifdef WANT_WIDE
# define Wmemcmp wmemcmp
#else
-libc_hidden_proto(memcmp)
+/* Experimentally off - libc_hidden_proto(memcmp) */
# define Wmemcmp memcmp
#endif
diff --git a/libc/string/memmem.c b/libc/string/memmem.c
index fd60f1e7b..9dcd4c4c0 100644
--- a/libc/string/memmem.c
+++ b/libc/string/memmem.c
@@ -8,7 +8,7 @@
#include "_string.h"
#ifdef __USE_GNU
-libc_hidden_proto(memmem)
+/* Experimentally off - libc_hidden_proto(memmem) */
void *memmem(const void *haystack, size_t haystacklen,
const void *needle, size_t needlelen)
{
diff --git a/libc/string/memmove.c b/libc/string/memmove.c
index 3cdcca116..0bea9b497 100644
--- a/libc/string/memmove.c
+++ b/libc/string/memmove.c
@@ -10,7 +10,7 @@
#ifdef WANT_WIDE
# define Wmemmove wmemmove
#else
-libc_hidden_proto(memmove)
+/* Experimentally off - libc_hidden_proto(memmove) */
# define Wmemmove memmove
#endif
diff --git a/libc/string/memrchr.c b/libc/string/memrchr.c
index 2959396b2..b2f9001cd 100644
--- a/libc/string/memrchr.c
+++ b/libc/string/memrchr.c
@@ -9,7 +9,7 @@
#ifdef __USE_GNU
-libc_hidden_proto(memrchr)
+/* Experimentally off - libc_hidden_proto(memrchr) */
void *memrchr(const void *s, int c, size_t n)
{
diff --git a/libc/string/memset.c b/libc/string/memset.c
index 2f3fc271d..6dd20d668 100644
--- a/libc/string/memset.c
+++ b/libc/string/memset.c
@@ -10,7 +10,7 @@
#ifdef WANT_WIDE
# define Wmemset wmemset
#else
-libc_hidden_proto(memset)
+/* Experimentally off - libc_hidden_proto(memset) */
# define Wmemset memset
#endif
diff --git a/libc/string/powerpc/memcpy.c b/libc/string/powerpc/memcpy.c
index ed8022313..bcbb806f8 100644
--- a/libc/string/powerpc/memcpy.c
+++ b/libc/string/powerpc/memcpy.c
@@ -21,7 +21,7 @@
#include <string.h>
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
void *memcpy(void *to, const void *from, size_t n)
/* PPC can do pre increment and load/store, but not post increment and load/store.
Therefore use *++ptr instead of *ptr++. */
diff --git a/libc/string/powerpc/memmove.c b/libc/string/powerpc/memmove.c
index 327161116..7a4a7e5ff 100644
--- a/libc/string/powerpc/memmove.c
+++ b/libc/string/powerpc/memmove.c
@@ -21,9 +21,9 @@
#include <string.h>
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
-libc_hidden_proto(memmove)
+/* Experimentally off - libc_hidden_proto(memmove) */
void *memmove(void *to, const void *from, size_t n)
{
unsigned long rem, chunks, tmp1, tmp2;
diff --git a/libc/string/powerpc/memset.c b/libc/string/powerpc/memset.c
index 93a2c48b2..d62ec0ee0 100644
--- a/libc/string/powerpc/memset.c
+++ b/libc/string/powerpc/memset.c
@@ -21,7 +21,7 @@
#include <string.h>
-libc_hidden_proto(memset)
+/* Experimentally off - libc_hidden_proto(memset) */
static inline int expand_byte_word(int c){
/* this does:
diff --git a/libc/string/psignal.c b/libc/string/psignal.c
index 467e3bc37..1ca8725db 100644
--- a/libc/string/psignal.c
+++ b/libc/string/psignal.c
@@ -11,7 +11,7 @@
#include <signal.h>
libc_hidden_proto(fprintf)
-libc_hidden_proto(strsignal)
+/* Experimentally off - libc_hidden_proto(strsignal) */
/* TODO: make this threadsafe with a reentrant version of strsignal? */
diff --git a/libc/string/rawmemchr.c b/libc/string/rawmemchr.c
index 1bbcb01b5..3cddefa10 100644
--- a/libc/string/rawmemchr.c
+++ b/libc/string/rawmemchr.c
@@ -8,7 +8,7 @@
#include "_string.h"
#ifdef __USE_GNU
-libc_hidden_proto(rawmemchr)
+/* Experimentally off - libc_hidden_proto(rawmemchr) */
void *rawmemchr(const void *s, int c)
{
register const unsigned char *r = s;
diff --git a/libc/string/stpcpy.c b/libc/string/stpcpy.c
index f34b9f65a..8a487584e 100644
--- a/libc/string/stpcpy.c
+++ b/libc/string/stpcpy.c
@@ -10,7 +10,7 @@
#ifdef WANT_WIDE
# define Wstpcpy wcpcpy
#else
-libc_hidden_proto(stpcpy)
+/* Experimentally off - libc_hidden_proto(stpcpy) */
# define Wstpcpy stpcpy
#endif
diff --git a/libc/string/stpncpy.c b/libc/string/stpncpy.c
index 2603d2bd0..dac8471fd 100644
--- a/libc/string/stpncpy.c
+++ b/libc/string/stpncpy.c
@@ -10,7 +10,7 @@
#ifdef WANT_WIDE
# define Wstpncpy wcpncpy
#else
-libc_hidden_proto(stpncpy)
+/* Experimentally off - libc_hidden_proto(stpncpy) */
# define Wstpncpy stpncpy
#endif
diff --git a/libc/string/strcasecmp.c b/libc/string/strcasecmp.c
index 7fa521fb7..2aa2e7776 100644
--- a/libc/string/strcasecmp.c
+++ b/libc/string/strcasecmp.c
@@ -35,9 +35,9 @@ libc_hidden_proto(tolower)
#if defined(__UCLIBC_HAS_XLOCALE__) && !defined(__UCLIBC_DO_XLOCALE)
-libc_hidden_proto(strcasecmp_l)
+/* Experimentally off - libc_hidden_proto(strcasecmp_l) */
-libc_hidden_proto(strcasecmp)
+/* Experimentally off - libc_hidden_proto(strcasecmp) */
int strcasecmp(register const Wchar *s1, register const Wchar *s2)
{
return strcasecmp_l(s1, s2, __UCLIBC_CURLOCALE);
diff --git a/libc/string/strcasestr.c b/libc/string/strcasestr.c
index afef59985..ab588c052 100644
--- a/libc/string/strcasestr.c
+++ b/libc/string/strcasestr.c
@@ -54,3 +54,4 @@ char *strcasestr(const char *s1, const char *s2)
return (*p) ? NULL : (char *) s1;
#endif
}
+libc_hidden_def(strcasestr)
diff --git a/libc/string/strcspn.c b/libc/string/strcspn.c
index 75d2e081b..1ec460a15 100644
--- a/libc/string/strcspn.c
+++ b/libc/string/strcspn.c
@@ -10,7 +10,7 @@
#ifdef WANT_WIDE
# define Wstrcspn wcscspn
#else
-libc_hidden_proto(strcspn)
+/* Experimentally off - libc_hidden_proto(strcspn) */
# define Wstrcspn strcspn
#endif
diff --git a/libc/string/strdup.c b/libc/string/strdup.c
index fff74444c..61fc186c8 100644
--- a/libc/string/strdup.c
+++ b/libc/string/strdup.c
@@ -13,12 +13,12 @@ libc_hidden_proto(wcslen)
# define Wstrdup wcsdup
# define Wstrlen wcslen
#else
-libc_hidden_proto(strdup)
-libc_hidden_proto(strlen)
+/* Experimentally off - libc_hidden_proto(strdup) */
+/* Experimentally off - libc_hidden_proto(strlen) */
# define Wstrdup strdup
# define Wstrlen strlen
#endif
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
Wchar *Wstrdup(register const Wchar *s1)
{
diff --git a/libc/string/strerror.c b/libc/string/strerror.c
index 1b5cb3ff2..355c7bdda 100644
--- a/libc/string/strerror.c
+++ b/libc/string/strerror.c
@@ -9,7 +9,7 @@
#include <string.h>
#include "_syserrmsg.h"
-libc_hidden_proto(strerror)
+/* Experimentally off - libc_hidden_proto(strerror) */
libc_hidden_proto(__xpg_strerror_r)
char *strerror(int errnum)
diff --git a/libc/string/strlcpy.c b/libc/string/strlcpy.c
index e888b85b2..cdad4dc5d 100644
--- a/libc/string/strlcpy.c
+++ b/libc/string/strlcpy.c
@@ -11,7 +11,7 @@
# define Wstrlcpy __wcslcpy
# define Wstrxfrm wcsxfrm
#else
-libc_hidden_proto(strlcpy)
+/* Experimentally off - libc_hidden_proto(strlcpy) */
# define Wstrlcpy strlcpy
# define Wstrxfrm strxfrm
#endif
@@ -52,7 +52,7 @@ size_t Wstrlcpy(register Wchar *__restrict dst,
#ifndef WANT_WIDE
libc_hidden_def(strlcpy)
#ifndef __UCLIBC_HAS_LOCALE__
-libc_hidden_proto(strxfrm)
+/* Experimentally off - libc_hidden_proto(strxfrm) */
strong_alias(strlcpy,strxfrm)
libc_hidden_def(strxfrm)
#endif
diff --git a/libc/string/strncasecmp.c b/libc/string/strncasecmp.c
index 9980dd704..bc0481fb2 100644
--- a/libc/string/strncasecmp.c
+++ b/libc/string/strncasecmp.c
@@ -35,9 +35,9 @@ libc_hidden_proto(tolower)
#if defined(__UCLIBC_HAS_XLOCALE__) && !defined(__UCLIBC_DO_XLOCALE)
-libc_hidden_proto(strncasecmp_l)
+/* Experimentally off - libc_hidden_proto(strncasecmp_l) */
-libc_hidden_proto(strncasecmp)
+/* Experimentally off - libc_hidden_proto(strncasecmp) */
int strncasecmp(register const Wchar *s1, register const Wchar *s2, size_t n)
{
return strncasecmp_l(s1, s2, n, __UCLIBC_CURLOCALE);
diff --git a/libc/string/strncat.c b/libc/string/strncat.c
index 61170c369..be4dd9301 100644
--- a/libc/string/strncat.c
+++ b/libc/string/strncat.c
@@ -10,7 +10,7 @@
#ifdef WANT_WIDE
# define Wstrncat wcsncat
#else
-libc_hidden_proto(strncat)
+/* Experimentally off - libc_hidden_proto(strncat) */
# define Wstrncat strncat
#endif
diff --git a/libc/string/strncmp.c b/libc/string/strncmp.c
index 8cebaacac..84a2bd512 100644
--- a/libc/string/strncmp.c
+++ b/libc/string/strncmp.c
@@ -10,7 +10,7 @@
#ifdef WANT_WIDE
# define Wstrncmp wcsncmp
#else
-libc_hidden_proto(strncmp)
+/* Experimentally off - libc_hidden_proto(strncmp) */
# define Wstrncmp strncmp
#endif
diff --git a/libc/string/strncpy.c b/libc/string/strncpy.c
index 40da93dac..ea5e494c7 100644
--- a/libc/string/strncpy.c
+++ b/libc/string/strncpy.c
@@ -10,7 +10,7 @@
#ifdef WANT_WIDE
# define Wstrncpy wcsncpy
#else
-libc_hidden_proto(strncpy)
+/* Experimentally off - libc_hidden_proto(strncpy) */
# define Wstrncpy strncpy
#endif
diff --git a/libc/string/strndup.c b/libc/string/strndup.c
index 89c58ccec..96a36d404 100644
--- a/libc/string/strndup.c
+++ b/libc/string/strndup.c
@@ -8,9 +8,9 @@
#include "_string.h"
#include <stdlib.h>
-libc_hidden_proto(strndup)
-libc_hidden_proto(strnlen)
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(strndup) */
+/* Experimentally off - libc_hidden_proto(strnlen) */
+/* Experimentally off - libc_hidden_proto(memcpy) */
char *strndup(register const char *s1, size_t n)
{
diff --git a/libc/string/strrchr.c b/libc/string/strrchr.c
index 2bf676d27..253c4166d 100644
--- a/libc/string/strrchr.c
+++ b/libc/string/strrchr.c
@@ -10,7 +10,7 @@
#ifdef WANT_WIDE
# define Wstrrchr wcsrchr
#else
-libc_hidden_proto(strrchr)
+/* Experimentally off - libc_hidden_proto(strrchr) */
# define Wstrrchr strrchr
#endif
diff --git a/libc/string/strsep.c b/libc/string/strsep.c
index 2cc940def..373b00a71 100644
--- a/libc/string/strsep.c
+++ b/libc/string/strsep.c
@@ -9,10 +9,10 @@
#ifdef __USE_BSD
-libc_hidden_proto(strpbrk)
-libc_hidden_proto(strcspn)
+/* Experimentally off - libc_hidden_proto(strpbrk) */
+/* Experimentally off - libc_hidden_proto(strcspn) */
-libc_hidden_proto(strsep)
+/* Experimentally off - libc_hidden_proto(strsep) */
char *strsep(char ** __restrict s1, const char * __restrict s2)
{
register char *s = *s1;
diff --git a/libc/string/strsignal.c b/libc/string/strsignal.c
index f8b6a9e9f..ee083d649 100644
--- a/libc/string/strsignal.c
+++ b/libc/string/strsignal.c
@@ -18,8 +18,8 @@
#include <bits/uClibc_uintmaxtostr.h>
#include <signal.h>
-libc_hidden_proto(strsignal)
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(strsignal) */
+/* Experimentally off - libc_hidden_proto(memcpy) */
#define _SYS_NSIG 32
diff --git a/libc/string/strstr.c b/libc/string/strstr.c
index 685a2f83c..05712e62b 100644
--- a/libc/string/strstr.c
+++ b/libc/string/strstr.c
@@ -10,7 +10,7 @@
#ifdef WANT_WIDE
# define Wstrstr wcsstr
#else
-libc_hidden_proto(strstr)
+/* Experimentally off - libc_hidden_proto(strstr) */
# define Wstrstr strstr
#endif
diff --git a/libc/string/strtok.c b/libc/string/strtok.c
index 127497c9d..159dd6b6a 100644
--- a/libc/string/strtok.c
+++ b/libc/string/strtok.c
@@ -15,10 +15,11 @@
# define Wstrtok_r strtok_r
#endif
-libc_hidden_proto(Wstrtok_r)
+/* Experimentally off - libc_hidden_proto(Wstrtok_r) */
Wchar *Wstrtok(Wchar * __restrict s1, const Wchar * __restrict s2)
{
static Wchar *next_start; /* Initialized to 0 since in bss. */
return Wstrtok_r(s1, s2, &next_start);
}
+libc_hidden_def(Wstrtok)
diff --git a/libc/string/strtok_r.c b/libc/string/strtok_r.c
index bda56d71c..2ad7746b1 100644
--- a/libc/string/strtok_r.c
+++ b/libc/string/strtok_r.c
@@ -14,9 +14,9 @@ libc_hidden_proto(wcspbrk)
# define Wstrspn wcsspn
# define Wstrpbrk wcspbrk
#else
-libc_hidden_proto(strtok_r)
-libc_hidden_proto(strspn)
-libc_hidden_proto(strpbrk)
+/* Experimentally off - libc_hidden_proto(strtok_r) */
+/* Experimentally off - libc_hidden_proto(strspn) */
+/* Experimentally off - libc_hidden_proto(strpbrk) */
# define Wstrtok_r strtok_r
# define Wstrspn strspn
# define Wstrpbrk strpbrk
diff --git a/libc/sysdeps/linux/arm/aeabi_memclr.c b/libc/sysdeps/linux/arm/aeabi_memclr.c
index ed335c0ac..c0f90216c 100644
--- a/libc/sysdeps/linux/arm/aeabi_memclr.c
+++ b/libc/sysdeps/linux/arm/aeabi_memclr.c
@@ -18,7 +18,7 @@
#include <string.h>
-libc_hidden_proto(memset)
+/* Experimentally off - libc_hidden_proto(memset) */
/* Clear memory. Can't alias to bzero because it's not defined in the
same translation unit. */
diff --git a/libc/sysdeps/linux/arm/aeabi_memcpy.c b/libc/sysdeps/linux/arm/aeabi_memcpy.c
index 18c7a38ea..83eac0b67 100644
--- a/libc/sysdeps/linux/arm/aeabi_memcpy.c
+++ b/libc/sysdeps/linux/arm/aeabi_memcpy.c
@@ -18,7 +18,7 @@
#include <string.h>
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
/* Copy memory like memcpy, but no return value required. Can't alias
to memcpy because it's not defined in the same translation
diff --git a/libc/sysdeps/linux/arm/aeabi_memmove.c b/libc/sysdeps/linux/arm/aeabi_memmove.c
index 70746ece4..164d72bc9 100644
--- a/libc/sysdeps/linux/arm/aeabi_memmove.c
+++ b/libc/sysdeps/linux/arm/aeabi_memmove.c
@@ -18,7 +18,7 @@
#include <string.h>
-libc_hidden_proto(memmove)
+/* Experimentally off - libc_hidden_proto(memmove) */
/* Copy memory like memmove, but no return value required. Can't
alias to memmove because it's not defined in the same translation
diff --git a/libc/sysdeps/linux/arm/aeabi_memset.c b/libc/sysdeps/linux/arm/aeabi_memset.c
index 8bf980b8b..f1c366f27 100644
--- a/libc/sysdeps/linux/arm/aeabi_memset.c
+++ b/libc/sysdeps/linux/arm/aeabi_memset.c
@@ -18,7 +18,7 @@
#include <string.h>
-libc_hidden_proto(memset)
+/* Experimentally off - libc_hidden_proto(memset) */
/* Set memory like memset, but different argument order and no return
value required. */
diff --git a/libc/sysdeps/linux/arm/ioperm.c b/libc/sysdeps/linux/arm/ioperm.c
index d5cfac7e4..0229f871d 100644
--- a/libc/sysdeps/linux/arm/ioperm.c
+++ b/libc/sysdeps/linux/arm/ioperm.c
@@ -56,7 +56,7 @@ libc_hidden_proto(fprintf)
libc_hidden_proto(fgets)
libc_hidden_proto(fopen)
libc_hidden_proto(fclose)
-libc_hidden_proto(strcmp)
+/* Experimentally off - libc_hidden_proto(strcmp) */
libc_hidden_proto(open)
libc_hidden_proto(close)
diff --git a/libc/sysdeps/linux/arm/sigaction.c b/libc/sysdeps/linux/arm/sigaction.c
index 8ab2be797..552ac17bf 100644
--- a/libc/sysdeps/linux/arm/sigaction.c
+++ b/libc/sysdeps/linux/arm/sigaction.c
@@ -43,7 +43,7 @@ extern __typeof(sigaction) __libc_sigaction;
#ifdef __NR_rt_sigaction
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
/* If ACT is not NULL, change the action for SIG to *ACT.
If OACT is not NULL, put the old action for SIG in *OACT. */
diff --git a/libc/sysdeps/linux/avr32/sigaction.c b/libc/sysdeps/linux/avr32/sigaction.c
index 6dcca914c..6b6b3466c 100644
--- a/libc/sysdeps/linux/avr32/sigaction.c
+++ b/libc/sysdeps/linux/avr32/sigaction.c
@@ -14,7 +14,7 @@
#define SA_RESTORER 0x04000000
extern void __default_rt_sa_restorer(void);
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
/*
* If act is not NULL, change the action for sig to *act.
diff --git a/libc/sysdeps/linux/common/getcwd.c b/libc/sysdeps/linux/common/getcwd.c
index d52792994..512a9e1ee 100644
--- a/libc/sysdeps/linux/common/getcwd.c
+++ b/libc/sysdeps/linux/common/getcwd.c
@@ -18,10 +18,10 @@
libc_hidden_proto(getcwd)
libc_hidden_proto(getpagesize)
-libc_hidden_proto(strcat)
-libc_hidden_proto(strcpy)
-libc_hidden_proto(strncpy)
-libc_hidden_proto(strlen)
+/* Experimentally off - libc_hidden_proto(strcat) */
+/* Experimentally off - libc_hidden_proto(strcpy) */
+/* Experimentally off - libc_hidden_proto(strncpy) */
+/* Experimentally off - libc_hidden_proto(strlen) */
libc_hidden_proto(opendir)
libc_hidden_proto(readdir)
libc_hidden_proto(closedir)
diff --git a/libc/sysdeps/linux/common/getdents.c b/libc/sysdeps/linux/common/getdents.c
index 226971298..8613e3a9b 100644
--- a/libc/sysdeps/linux/common/getdents.c
+++ b/libc/sysdeps/linux/common/getdents.c
@@ -41,7 +41,7 @@ ssize_t __getdents (int fd, char *buf, size_t nbytes) attribute_hidden;
#if ! defined __UCLIBC_HAS_LFS__ || ! defined __NR_getdents64
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
libc_hidden_proto(lseek)
#define __NR___syscall_getdents __NR_getdents
@@ -108,7 +108,7 @@ attribute_hidden strong_alias(__getdents,__getdents64)
#elif __WORDSIZE == 32
-libc_hidden_proto(memmove)
+/* Experimentally off - libc_hidden_proto(memmove) */
extern __typeof(__getdents) __getdents64 attribute_hidden;
ssize_t __getdents (int fd, char *buf, size_t nbytes)
diff --git a/libc/sysdeps/linux/common/getdents64.c b/libc/sysdeps/linux/common/getdents64.c
index a344240bb..2328df29e 100644
--- a/libc/sysdeps/linux/common/getdents64.c
+++ b/libc/sysdeps/linux/common/getdents64.c
@@ -20,7 +20,7 @@
#if defined __UCLIBC_HAS_LFS__ && defined __NR_getdents64
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
libc_hidden_proto(lseek64)
# ifndef offsetof
diff --git a/libc/sysdeps/linux/common/getdirname.c b/libc/sysdeps/linux/common/getdirname.c
index e196d1bd9..5938d7257 100644
--- a/libc/sysdeps/linux/common/getdirname.c
+++ b/libc/sysdeps/linux/common/getdirname.c
@@ -25,7 +25,7 @@
#include <stdlib.h>
#include <string.h>
-libc_hidden_proto(strdup)
+/* Experimentally off - libc_hidden_proto(strdup) */
libc_hidden_proto(getcwd)
libc_hidden_proto(getenv)
#ifdef __UCLIBC_HAS_LFS__
diff --git a/libc/sysdeps/linux/common/getdnnm.c b/libc/sysdeps/linux/common/getdnnm.c
index ee1b012c4..d98651a97 100644
--- a/libc/sysdeps/linux/common/getdnnm.c
+++ b/libc/sysdeps/linux/common/getdnnm.c
@@ -12,8 +12,8 @@
#include <sys/utsname.h>
#if defined __USE_BSD || (defined __USE_XOPEN && !defined __USE_UNIX98)
-libc_hidden_proto(strlen)
-libc_hidden_proto(strcpy)
+/* Experimentally off - libc_hidden_proto(strlen) */
+/* Experimentally off - libc_hidden_proto(strcpy) */
libc_hidden_proto(uname)
libc_hidden_proto(getdomainname)
diff --git a/libc/sysdeps/linux/common/gethstnm.c b/libc/sysdeps/linux/common/gethstnm.c
index fc5a72c8d..8fc14ff32 100644
--- a/libc/sysdeps/linux/common/gethstnm.c
+++ b/libc/sysdeps/linux/common/gethstnm.c
@@ -11,8 +11,8 @@
libc_hidden_proto(gethostname)
-libc_hidden_proto(strlen)
-libc_hidden_proto(strcpy)
+/* Experimentally off - libc_hidden_proto(strlen) */
+/* Experimentally off - libc_hidden_proto(strcpy) */
libc_hidden_proto(uname)
int
diff --git a/libc/sysdeps/linux/common/poll.c b/libc/sysdeps/linux/common/poll.c
index 47eb87d73..3b0a1fd52 100644
--- a/libc/sysdeps/linux/common/poll.c
+++ b/libc/sysdeps/linux/common/poll.c
@@ -57,8 +57,8 @@ int __libc_poll(struct pollfd *fds, nfds_t nfds, int timeout)
#include <sys/param.h>
#include <unistd.h>
-libc_hidden_proto(memcpy)
-libc_hidden_proto(memset)
+/* Experimentally off - libc_hidden_proto(memcpy) */
+/* Experimentally off - libc_hidden_proto(memset) */
libc_hidden_proto(getdtablesize)
libc_hidden_proto(select)
diff --git a/libc/sysdeps/linux/common/sched_getaffinity.c b/libc/sysdeps/linux/common/sched_getaffinity.c
index 6c12ba116..b876cf932 100644
--- a/libc/sysdeps/linux/common/sched_getaffinity.c
+++ b/libc/sysdeps/linux/common/sched_getaffinity.c
@@ -27,7 +27,7 @@
#include <sys/param.h>
#include <sys/types.h>
-libc_hidden_proto(memset)
+/* Experimentally off - libc_hidden_proto(memset) */
#define __NR___syscall_sched_getaffinity __NR_sched_getaffinity
static inline _syscall3(int, __syscall_sched_getaffinity, __kernel_pid_t, pid,
diff --git a/libc/sysdeps/linux/common/sigqueue.c b/libc/sysdeps/linux/common/sigqueue.c
index 3d86414d9..9019852f1 100644
--- a/libc/sysdeps/linux/common/sigqueue.c
+++ b/libc/sysdeps/linux/common/sigqueue.c
@@ -25,7 +25,7 @@
libc_hidden_proto(getpid)
libc_hidden_proto(getuid)
-libc_hidden_proto(memset)
+/* Experimentally off - libc_hidden_proto(memset) */
#ifdef __NR_rt_sigqueueinfo
diff --git a/libc/sysdeps/linux/common/ssp.c b/libc/sysdeps/linux/common/ssp.c
index 16b9f9c10..d8088ef60 100644
--- a/libc/sysdeps/linux/common/ssp.c
+++ b/libc/sysdeps/linux/common/ssp.c
@@ -31,8 +31,8 @@
#include <signal.h>
#include <sys/syslog.h>
-libc_hidden_proto(memset)
-libc_hidden_proto(strlen)
+/* Experimentally off - libc_hidden_proto(memset) */
+/* Experimentally off - libc_hidden_proto(strlen) */
libc_hidden_proto(sigaction)
libc_hidden_proto(sigfillset)
libc_hidden_proto(sigdelset)
diff --git a/libc/sysdeps/linux/common/xstatconv.c b/libc/sysdeps/linux/common/xstatconv.c
index 792bc090a..abcb496b8 100644
--- a/libc/sysdeps/linux/common/xstatconv.c
+++ b/libc/sysdeps/linux/common/xstatconv.c
@@ -25,7 +25,7 @@
#include <string.h>
#include "xstatconv.h"
-libc_hidden_proto(memset)
+/* Experimentally off - libc_hidden_proto(memset) */
void attribute_hidden __xstat_conv(struct kernel_stat *kbuf, struct stat *buf)
{
diff --git a/libc/sysdeps/linux/i386/sigaction.c b/libc/sysdeps/linux/i386/sigaction.c
index 0b28ae522..fbd5014e7 100644
--- a/libc/sysdeps/linux/i386/sigaction.c
+++ b/libc/sysdeps/linux/i386/sigaction.c
@@ -30,7 +30,7 @@
extern __typeof(sigaction) __libc_sigaction;
#if defined __NR_rt_sigaction
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
extern void restore_rt (void) __asm__ ("__restore_rt") attribute_hidden;
extern void restore (void) __asm__ ("__restore") attribute_hidden;
diff --git a/libc/sysdeps/linux/mips/sigaction.c b/libc/sysdeps/linux/mips/sigaction.c
index cb819a25f..0135481ae 100644
--- a/libc/sysdeps/linux/mips/sigaction.c
+++ b/libc/sysdeps/linux/mips/sigaction.c
@@ -31,7 +31,7 @@ extern __typeof(sigaction) __libc_sigaction;
#ifdef __NR_rt_sigaction
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
#if _MIPS_SIM != _ABIO32
diff --git a/libc/sysdeps/linux/x86_64/sigaction.c b/libc/sysdeps/linux/x86_64/sigaction.c
index 2812de169..29b6ed03a 100644
--- a/libc/sysdeps/linux/x86_64/sigaction.c
+++ b/libc/sysdeps/linux/x86_64/sigaction.c
@@ -41,7 +41,7 @@ extern __typeof(sigaction) __libc_sigaction;
extern void restore_rt (void) __asm__ ("__restore_rt") attribute_hidden;
extern void restore (void) __asm__ ("__restore") attribute_hidden;
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
/* If ACT is not NULL, change the action for SIG to *ACT.
If OACT is not NULL, put the old action for SIG in *OACT. */
diff --git a/libc/sysdeps/linux/xtensa/sigaction.c b/libc/sysdeps/linux/xtensa/sigaction.c
index 5ef40c36e..60d915c56 100644
--- a/libc/sysdeps/linux/xtensa/sigaction.c
+++ b/libc/sysdeps/linux/xtensa/sigaction.c
@@ -17,7 +17,7 @@
extern void __default_sa_restorer (void);
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
int __libc_sigaction (int signum, const struct sigaction *act,
struct sigaction *oldact)
diff --git a/libc/termios/tcgetattr.c b/libc/termios/tcgetattr.c
index 726c83a44..a5a5df6b5 100644
--- a/libc/termios/tcgetattr.c
+++ b/libc/termios/tcgetattr.c
@@ -24,9 +24,9 @@
#include <sys/types.h>
libc_hidden_proto(ioctl)
-libc_hidden_proto(memset)
-libc_hidden_proto(memcpy)
-libc_hidden_proto(mempcpy)
+/* Experimentally off - libc_hidden_proto(memset) */
+/* Experimentally off - libc_hidden_proto(memcpy) */
+/* Experimentally off - libc_hidden_proto(mempcpy) */
libc_hidden_proto(tcgetattr)
/* The difference here is that the termios structure used in the
diff --git a/libc/termios/tcsetattr.c b/libc/termios/tcsetattr.c
index 847023f86..d0d82c2ac 100644
--- a/libc/termios/tcsetattr.c
+++ b/libc/termios/tcsetattr.c
@@ -23,7 +23,7 @@
#include <sys/types.h>
libc_hidden_proto(tcsetattr)
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
libc_hidden_proto(ioctl)
/* The difference here is that the termios structure used in the
diff --git a/libc/termios/ttyname.c b/libc/termios/ttyname.c
index 001681caa..9d6a8ce36 100644
--- a/libc/termios/ttyname.c
+++ b/libc/termios/ttyname.c
@@ -34,8 +34,8 @@
libc_hidden_proto(ttyname_r)
libc_hidden_proto(fstat)
libc_hidden_proto(lstat)
-libc_hidden_proto(strcpy)
-libc_hidden_proto(strlen)
+/* Experimentally off - libc_hidden_proto(strcpy) */
+/* Experimentally off - libc_hidden_proto(strlen) */
libc_hidden_proto(opendir)
libc_hidden_proto(closedir)
libc_hidden_proto(readdir)
diff --git a/libc/unistd/confstr.c b/libc/unistd/confstr.c
index 34ae98483..67a9d585a 100644
--- a/libc/unistd/confstr.c
+++ b/libc/unistd/confstr.c
@@ -22,7 +22,7 @@
#include <unistd.h>
#include <string.h>
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
#define CS_PATH "/bin:/usr/bin"
diff --git a/libc/unistd/exec.c b/libc/unistd/exec.c
index 1006ac3c4..9134e4370 100644
--- a/libc/unistd/exec.c
+++ b/libc/unistd/exec.c
@@ -33,9 +33,9 @@ libc_hidden_proto(execlp)
libc_hidden_proto(execv)
libc_hidden_proto(execvp)
-libc_hidden_proto(memcpy)
-libc_hidden_proto(strchr)
-libc_hidden_proto(strlen)
+/* Experimentally off - libc_hidden_proto(memcpy) */
+/* Experimentally off - libc_hidden_proto(strchr) */
+/* Experimentally off - libc_hidden_proto(strlen) */
libc_hidden_proto(execve)
libc_hidden_proto(mmap)
libc_hidden_proto(munmap)
@@ -233,7 +233,7 @@ libc_hidden_def(execlp)
/**********************************************************************/
#ifdef L_execvp
-libc_hidden_proto(strchrnul)
+/* Experimentally off - libc_hidden_proto(strchrnul) */
/* Use a default path that matches glibc behavior, since SUSv3 says
* this is implementation-defined. The default is current working dir,
diff --git a/libc/unistd/getlogin.c b/libc/unistd/getlogin.c
index 42438b327..1998a7fc8 100644
--- a/libc/unistd/getlogin.c
+++ b/libc/unistd/getlogin.c
@@ -10,8 +10,8 @@
#include <unistd.h>
#include <stdio.h>
-libc_hidden_proto(strcpy)
-libc_hidden_proto(strncpy)
+/* Experimentally off - libc_hidden_proto(strcpy) */
+/* Experimentally off - libc_hidden_proto(strncpy) */
libc_hidden_proto(getenv)
/* uClibc makes it policy to not mess with the utmp file whenever
diff --git a/libc/unistd/getopt-susv3.c b/libc/unistd/getopt-susv3.c
index b13368c38..73d7a7e38 100644
--- a/libc/unistd/getopt-susv3.c
+++ b/libc/unistd/getopt-susv3.c
@@ -24,7 +24,7 @@
#include <getopt.h>
libc_hidden_proto(fprintf)
-libc_hidden_proto(strchr)
+/* Experimentally off - libc_hidden_proto(strchr) */
#ifdef __UCLIBC_MJN3_ONLY__
#warning TODO: Enable gettext awareness.
diff --git a/libc/unistd/getopt.c b/libc/unistd/getopt.c
index 0c30032c9..754e86f25 100644
--- a/libc/unistd/getopt.c
+++ b/libc/unistd/getopt.c
@@ -121,10 +121,10 @@
#include <getopt.h>
#include "getopt_int.h"
-libc_hidden_proto(strchr)
-libc_hidden_proto(strcmp)
-libc_hidden_proto(strlen)
-libc_hidden_proto(strncmp)
+/* Experimentally off - libc_hidden_proto(strchr) */
+/* Experimentally off - libc_hidden_proto(strcmp) */
+/* Experimentally off - libc_hidden_proto(strlen) */
+/* Experimentally off - libc_hidden_proto(strncmp) */
libc_hidden_proto(getenv)
libc_hidden_proto(fprintf)
diff --git a/libc/unistd/getpass.c b/libc/unistd/getpass.c
index 2521853e6..c9daaaadd 100644
--- a/libc/unistd/getpass.c
+++ b/libc/unistd/getpass.c
@@ -24,7 +24,7 @@
#if defined __USE_BSD || (defined __USE_XOPEN && !defined __USE_XOPEN2K)
-libc_hidden_proto(strlen)
+/* Experimentally off - libc_hidden_proto(strlen) */
libc_hidden_proto(tcsetattr)
libc_hidden_proto(tcgetattr)
libc_hidden_proto(setvbuf)
diff --git a/libc/unistd/getsubopt-susv3.c b/libc/unistd/getsubopt-susv3.c
index 464223c42..10c97ca9a 100644
--- a/libc/unistd/getsubopt-susv3.c
+++ b/libc/unistd/getsubopt-susv3.c
@@ -7,9 +7,9 @@
#include <stdlib.h>
#include <string.h>
-libc_hidden_proto(strchr)
-libc_hidden_proto(strlen)
-libc_hidden_proto(strncmp)
+/* Experimentally off - libc_hidden_proto(strchr) */
+/* Experimentally off - libc_hidden_proto(strlen) */
+/* Experimentally off - libc_hidden_proto(strncmp) */
int getsubopt(char **opt, char *const *keys, char **val)
{
diff --git a/libc/unistd/getsubopt.c b/libc/unistd/getsubopt.c
index 3cac432ec..301410232 100644
--- a/libc/unistd/getsubopt.c
+++ b/libc/unistd/getsubopt.c
@@ -21,9 +21,9 @@
#include <stdlib.h>
#include <string.h>
-libc_hidden_proto(memchr)
-libc_hidden_proto(strncmp)
-libc_hidden_proto(strchrnul)
+/* Experimentally off - libc_hidden_proto(memchr) */
+/* Experimentally off - libc_hidden_proto(strncmp) */
+/* Experimentally off - libc_hidden_proto(strchrnul) */
/* Parse comma separated suboption from *OPTIONP and match against
strings in TOKENS. If found return index and set *VALUEP to
diff --git a/libpthread/linuxthreads.old/libc_pthread_init.c b/libpthread/linuxthreads.old/libc_pthread_init.c
index 0ef3b47fc..4af6967e3 100644
--- a/libpthread/linuxthreads.old/libc_pthread_init.c
+++ b/libpthread/linuxthreads.old/libc_pthread_init.c
@@ -24,7 +24,7 @@
#include "internals.h"
#include "sysdeps/pthread/pthread-functions.h"
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
#if !(USE_TLS && HAVE___THREAD) && defined __UCLIBC_HAS_XLOCALE__
libc_hidden_proto(uselocale)
diff --git a/libpthread/linuxthreads/libc_pthread_init.c b/libpthread/linuxthreads/libc_pthread_init.c
index e8482c554..f89c2872e 100644
--- a/libpthread/linuxthreads/libc_pthread_init.c
+++ b/libpthread/linuxthreads/libc_pthread_init.c
@@ -26,7 +26,7 @@
#include "internals.h"
#ifdef SHARED
-libc_hidden_proto(memcpy)
+/* Experimentally off - libc_hidden_proto(memcpy) */
#endif
#if !(USE_TLS && HAVE___THREAD) && defined __UCLIBC_HAS_XLOCALE__