mirror of
git://sourceware.org/git/glibc.git
synced 2024-11-21 01:12:26 +08:00
string: Hook up the default implementation on test-strrchr
And remove SIMPLE_STRRCHR, which is not used anywhere. Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
This commit is contained in:
parent
77a9e5c97e
commit
0b9d2d4a76
@ -26,14 +26,12 @@
|
||||
|
||||
#ifdef WIDE
|
||||
# include <wchar.h>
|
||||
# define SIMPLE_STRRCHR simple_wcsrchr
|
||||
# define STRRCHR wcsrchr
|
||||
# define CHAR wchar_t
|
||||
# define UCHAR wchar_t
|
||||
# define BIG_CHAR WCHAR_MAX
|
||||
# define SMALL_CHAR 1273
|
||||
#else
|
||||
# define SIMPLE_STRRCHR simple_strrchr
|
||||
# define STRRCHR strrchr
|
||||
# define CHAR char
|
||||
# define UCHAR unsigned char
|
||||
@ -45,18 +43,30 @@ typedef CHAR *(*proto_t) (const CHAR *, int);
|
||||
|
||||
IMPL (STRRCHR, 1)
|
||||
|
||||
/* Naive implementation to verify results. */
|
||||
CHAR *
|
||||
SIMPLE_STRRCHR (const CHAR *s, int c)
|
||||
{
|
||||
const CHAR *ret = NULL;
|
||||
|
||||
for (; *s != '\0'; ++s)
|
||||
if (*s == (CHAR) c)
|
||||
ret = s;
|
||||
|
||||
return (CHAR *) (c == '\0' ? s : ret);
|
||||
}
|
||||
/* Also check the generic implementation. */
|
||||
#undef STRRCHR
|
||||
#undef weak_alias
|
||||
#define weak_alias(a, b)
|
||||
#undef libc_hidden_builtin_def
|
||||
#define libc_hidden_builtin_def(a)
|
||||
#undef libc_hidden_def
|
||||
#define libc_hidden_def(a)
|
||||
#undef libc_hidden_weak
|
||||
#define libc_hidden_weak(a)
|
||||
#ifndef WIDE
|
||||
# define STRLEN __strlen_default
|
||||
# include "string/strlen.c"
|
||||
# define MEMRCHR __memrchr_default
|
||||
# include "string/memrchr.c"
|
||||
# define STRRCHR __strrchr_default
|
||||
# include "string/strrchr.c"
|
||||
# define STRRCHR_DEFAULT __strrchr_default
|
||||
#else
|
||||
# define WCSRCHR __wcsrchr_default
|
||||
# include "wcsmbs/wcsrchr.c"
|
||||
# define STRRCHR_DEFAULT __wcsrchr_default
|
||||
#endif
|
||||
IMPL (STRRCHR_DEFAULT, 1)
|
||||
|
||||
static void
|
||||
do_one_test (impl_t *impl, const CHAR *s, int c, CHAR *exp_res)
|
||||
|
Loading…
Reference in New Issue
Block a user