diff options
Diffstat (limited to 'contrib/binutils/libiberty/strstr.c')
-rw-r--r-- | contrib/binutils/libiberty/strstr.c | 22 |
1 files changed, 10 insertions, 12 deletions
diff --git a/contrib/binutils/libiberty/strstr.c b/contrib/binutils/libiberty/strstr.c index a059c7f..60902ea 100644 --- a/contrib/binutils/libiberty/strstr.c +++ b/contrib/binutils/libiberty/strstr.c @@ -20,24 +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 (s1, s2) - char *s1, *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); } |