Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCorinna Vinschen <corinna@vinschen.de>2021-09-03 13:51:30 +0300
committerCorinna Vinschen <corinna@vinschen.de>2021-09-03 13:51:30 +0300
commitc2fe205b508c32117d2d0f132953d096254d5a7b (patch)
tree47b5fda2676eebd8a3bac16abde0d3db59f9226c
parent6a35ae33f5c76f0cda6466fb4b426ff37ed534a1 (diff)
strstr: avoid warnings
unused function warning for two_way_short_needle, different char type warnings for standard string functions Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
-rw-r--r--newlib/libc/string/str-two-way.h4
-rw-r--r--newlib/libc/string/strstr.c10
2 files changed, 7 insertions, 7 deletions
diff --git a/newlib/libc/string/str-two-way.h b/newlib/libc/string/str-two-way.h
index 90345a8de..e13f94907 100644
--- a/newlib/libc/string/str-two-way.h
+++ b/newlib/libc/string/str-two-way.h
@@ -195,7 +195,7 @@ critical_factorization (const unsigned char *needle, size_t needle_len,
most 2 * HAYSTACK_LEN - NEEDLE_LEN comparisons occur in searching.
If AVAILABLE modifies HAYSTACK_LEN (as in strstr), then at most 3 *
HAYSTACK_LEN - NEEDLE_LEN comparisons occur in searching. */
-static RETURN_TYPE
+static RETURN_TYPE __attribute__ ((__used__))
two_way_short_needle (const unsigned char *haystack, size_t haystack_len,
const unsigned char *needle, size_t needle_len)
{
@@ -289,7 +289,7 @@ two_way_short_needle (const unsigned char *haystack, size_t haystack_len,
If AVAILABLE modifies HAYSTACK_LEN (as in strstr), then at most 3 *
HAYSTACK_LEN - NEEDLE_LEN comparisons occur in searching, and
sublinear performance is not possible. */
-_NOINLINE_STATIC RETURN_TYPE
+_NOINLINE_STATIC RETURN_TYPE __attribute__ ((__used__))
two_way_long_needle (const unsigned char *haystack, size_t haystack_len,
const unsigned char *needle, size_t needle_len)
{
diff --git a/newlib/libc/string/strstr.c b/newlib/libc/string/strstr.c
index 00fe060e9..84e4632f1 100644
--- a/newlib/libc/string/strstr.c
+++ b/newlib/libc/string/strstr.c
@@ -90,7 +90,7 @@ strstr (const char *hs, const char *ne)
# define RETURN_TYPE char *
# define AVAILABLE(h, h_l, j, n_l) (((j) <= (h_l) - (n_l)) \
- || ((h_l) += strnlen ((h) + (h_l), (n_l) | 2048), ((j) <= (h_l) - (n_l))))
+ || ((h_l) += strnlen ((const char *) (h) + (h_l), (n_l) | 2048), ((j) <= (h_l) - (n_l))))
# include "str-two-way.h"
@@ -151,7 +151,7 @@ strstr (const char *haystack, const char *needle)
if (ne[0] == '\0')
return (char *) hs;
if (ne[1] == '\0')
- return (char*)strchr (hs, ne[0]);
+ return (char*)strchr ((const char *) hs, ne[0]);
if (ne[2] == '\0')
return strstr2 (hs, ne);
if (ne[3] == '\0')
@@ -159,8 +159,8 @@ strstr (const char *haystack, const char *needle)
if (ne[4] == '\0')
return strstr4 (hs, ne);
- size_t ne_len = strlen (ne);
- size_t hs_len = strnlen (hs, ne_len | 512);
+ size_t ne_len = strlen ((const char *) ne);
+ size_t hs_len = strnlen ((const char *) hs, ne_len | 512);
/* Ensure haystack length is >= needle length. */
if (hs_len < ne_len)
@@ -191,7 +191,7 @@ strstr (const char *haystack, const char *needle)
}
if (end[ne_len] == 0)
return NULL;
- end += strnlen (end + ne_len, 2048);
+ end += strnlen ((const char *) (end + ne_len), 2048);
}
while (hs <= end);