about summary refs log tree commit diff
path: root/string/test-strlen.c
diff options
context:
space:
mode:
Diffstat (limited to 'string/test-strlen.c')
-rw-r--r--string/test-strlen.c31
1 files changed, 14 insertions, 17 deletions
diff --git a/string/test-strlen.c b/string/test-strlen.c
index 81adf23737..0f98576f40 100644
--- a/string/test-strlen.c
+++ b/string/test-strlen.c
@@ -37,27 +37,24 @@
 
 typedef size_t (*proto_t) (const CHAR *);
 
-/* Naive implementation to verify results.  */
-size_t
-simple_STRLEN (const CHAR *s)
-{
-  const CHAR *p;
-
-  for (p = s; *p; ++p);
-  return p - s;
-}
+IMPL (STRLEN, 1)
 
+/* Also check the generic implementation.  */
+#undef STRLEN
+#undef weak_alias
+#define weak_alias(a, b)
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(a)
 #ifndef WIDE
-size_t
-builtin_strlen (const CHAR *p)
-{
-  return __builtin_strlen (p);
-}
-IMPL (builtin_strlen, 0)
+# define STRLEN __strlen_default
+# include "string/strlen.c"
+IMPL (__strlen_default, 1)
+#else
+# define WCSLEN __wcslen_default
+# include "wcsmbs/wcslen.c"
+IMPL (__wcslen_default, 1)
 #endif
 
-IMPL (STRLEN, 1)
-
 
 static void
 do_one_test (impl_t *impl, const CHAR *s, size_t exp_len)