summaryrefslogtreecommitdiff
path: root/libiberty/strstr.c
diff options
context:
space:
mode:
authorghazi <ghazi@138bc75d-0d04-0410-961f-82ee72b054a4>2005-04-02 19:57:12 +0000
committerghazi <ghazi@138bc75d-0d04-0410-961f-82ee72b054a4>2005-04-02 19:57:12 +0000
commit8e1547dab871e31b3a75cc1c172b47728ed8e210 (patch)
treeaffa924d98f9c5b1f7c2ae042a32d290d2648be3 /libiberty/strstr.c
parent1a5d072e8b39290ef6bbf961d343c5a975f91332 (diff)
downloadgcc-8e1547dab871e31b3a75cc1c172b47728ed8e210.tar.gz
* configure.ac (ac_libiberty_warn_cflags): Add -Wwrite-strings
-Wstrict-prototypes. * configure, config.in: Regenerate. * bsearch.c, index.c, rindex.c, strstr.c, strtol.c, waitpid.c: Fix warnings and reconcile interfaces with relevant standards. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@97456 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libiberty/strstr.c')
-rw-r--r--libiberty/strstr.c21
1 files changed, 10 insertions, 11 deletions
diff --git a/libiberty/strstr.c b/libiberty/strstr.c
index ff8abd20f78..60902ea40ee 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);
}