diff options
Diffstat (limited to 'libiberty/strstr.c')
-rw-r--r-- | libiberty/strstr.c | 21 |
1 files changed, 10 insertions, 11 deletions
diff --git a/libiberty/strstr.c b/libiberty/strstr.c index ff8abd2..60902ea 100644 --- a/libiberty/strstr.c +++ b/libiberty/strstr.c @@ -20,23 +20,22 @@ length, the function returns @var{string}. /* FIXME: The above description is ANSI compiliant. This routine has not been validated to comply with it. -fnf */ +#include <stddef.h> + +extern char *strchr (const char *, int); +extern int strncmp (const void *, const void *, size_t); +extern size_t strlen (const char *); + char * -strstr (char *s1, char *s2) +strstr (const char *s1, const char *s2) { - register char *p = s1; - extern char *strchr (); - extern int strncmp (); -#if __GNUC__ >= 2 - extern __SIZE_TYPE__ strlen (const char *); -#endif - register int len = strlen (s2); + const char *p = s1; + const size_t len = strlen (s2); for (; (p = strchr (p, *s2)) != 0; p++) { if (strncmp (p, s2, len) == 0) - { - return (p); - } + return (char *)p; } return (0); } |