This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Fix test-strchr.c warnings for wide string testing
- From: Joseph Myers <joseph at codesourcery dot com>
- To: <libc-alpha at sourceware dot org>
- Date: Wed, 26 Nov 2014 00:17:44 +0000
- Subject: Fix test-strchr.c warnings for wide string testing
- Authentication-results: sourceware.org; auth=none
string/test-strchr.c is used for both wide and narrow string testing,
but produces a series of warnings for wide string testing because of
hardcoded use of narrow characters in the function check1. This patch
fixes that function to use macros abstracting away the wide / narrow
string choice, adding a new such macro to handle the string and
character constants.
Tested for x86_64.
2014-11-26 Joseph Myers <joseph@codesourcery.com>
* string/test-strchr.c [!WIDE] (L): New macro.
[WIDE] (L): Likewise.
(check1): Use CHAR instead of char. Use L on string and character
constants.
diff --git a/string/test-strchr.c b/string/test-strchr.c
index 12cd9d8..fe2dfd2 100644
--- a/string/test-strchr.c
+++ b/string/test-strchr.c
@@ -44,6 +44,7 @@
# define MIDDLE_CHAR 127
# define SMALL_CHAR 23
# define UCHAR unsigned char
+# define L(s) s
#else
# include <wchar.h>
# define STRCHR wcschr
@@ -53,6 +54,7 @@
# define MIDDLE_CHAR 1121
# define SMALL_CHAR 851
# define UCHAR wchar_t
+# define L(s) L ## s
#endif
#ifdef USE_FOR_STRCHRNUL
@@ -219,9 +221,9 @@ do_random_tests (void)
static void
check1 (void)
{
- char s[] __attribute__((aligned(16))) = "\xff";
- char c = '\xfe';
- char *exp_result = stupid_STRCHR (s, c);
+ CHAR s[] __attribute__((aligned(16))) = L ("\xff");
+ CHAR c = L ('\xfe');
+ CHAR *exp_result = stupid_STRCHR (s, c);
FOR_EACH_IMPL (impl, 0)
check_result (impl, s, c, exp_result);
--
Joseph S. Myers
joseph@codesourcery.com