This is the mail archive of the
newlib@sourceware.org
mailing list for the newlib project.
[PATCH]Fix implicit declaration of function warning and error while compiling testsuite/newlib.wctype/tiswctype.c
- From: Renlin Li <renlin dot li at arm dot com>
- To: "newlib at sourceware dot org" <newlib at sourceware dot org>
- Cc: marcus Shawcroft <Marcus dot Shawcroft at arm dot com>, vinschen at redhat dot com
- Date: Fri, 09 Jan 2015 17:50:29 +0000
- Subject: [PATCH]Fix implicit declaration of function warning and error while compiling testsuite/newlib.wctype/tiswctype.c
- Authentication-results: sourceware.org; auth=none
Hi all,
This is a similar patch to this one:
https://sourceware.org/ml/newlib/2015/msg00004.html
And the description below is also similar.
newlib/testsuite/newlib.wctype/tiswctype.c fails to build in the
following targets:
aarch64-none-elf
arm-none-eabi
aarch64_be-none-elf
The following messages are produced:
newlib.wctype/tiswctype.c compilation warning: implicit declaration of
function (isalpha, isalnum, isblank etc.) [-Wimplicit-function-declaration]
Instead, wide character type functions should be called as wctype.h is
included.
Okay to commit?
Regards,
Renlin Li
newlib/ChangeLog:
2015-01-09 Renlin Li <renlin.li@arm.com>
* testsuite/newlib.wctype/tiswctype.c (main): Use wide character
type function.
diff --git a/newlib/testsuite/newlib.wctype/tiswctype.c b/newlib/testsuite/newlib.wctype/tiswctype.c
index da48fbb..441cddb 100644
--- a/newlib/testsuite/newlib.wctype/tiswctype.c
+++ b/newlib/testsuite/newlib.wctype/tiswctype.c
@@ -8,51 +8,51 @@ int main()
x = wctype ("alpha");
CHECK (x != 0);
- CHECK (iswctype (L'a', x) && isalpha ('a'));
+ CHECK (iswctype (L'a', x) && iswalpha (L'a'));
x = wctype ("alnum");
CHECK (x != 0);
- CHECK (iswctype (L'0', x) && isalnum ('0'));
+ CHECK (iswctype (L'0', x) && iswalnum (L'0'));
x = wctype ("blank");
CHECK (x != 0);
- CHECK (iswctype (L' ', x) && isblank (' '));
+ CHECK (iswctype (L' ', x) && iswblank (L' '));
x = wctype ("cntrl");
CHECK (x != 0);
- CHECK (iswctype (L'\n', x) && iscntrl ('\n'));
+ CHECK (iswctype (L'\n', x) && iswcntrl (L'\n'));
x = wctype ("digit");
CHECK (x != 0);
- CHECK (iswctype (L'7', x) && isdigit ('7'));
+ CHECK (iswctype (L'7', x) && iswdigit (L'7'));
x = wctype ("graph");
CHECK (x != 0);
- CHECK (iswctype (L'!', x) && isgraph ('!'));
+ CHECK (iswctype (L'!', x) && iswgraph (L'!'));
x = wctype ("lower");
CHECK (x != 0);
- CHECK (iswctype (L'k', x) && islower ('k'));
+ CHECK (iswctype (L'k', x) && iswlower (L'k'));
x = wctype ("print");
CHECK (x != 0);
- CHECK (iswctype (L'@', x) && isprint ('@'));
+ CHECK (iswctype (L'@', x) && iswprint (L'@'));
x = wctype ("punct");
CHECK (x != 0);
- CHECK (iswctype (L'.', x) && ispunct ('.'));
+ CHECK (iswctype (L'.', x) && iswpunct (L'.'));
x = wctype ("space");
CHECK (x != 0);
- CHECK (iswctype (L'\t', x) && isspace ('\t'));
+ CHECK (iswctype (L'\t', x) && iswspace (L'\t'));
x = wctype ("upper");
CHECK (x != 0);
- CHECK (iswctype (L'T', x) && isupper ('T'));
+ CHECK (iswctype (L'T', x) && iswupper (L'T'));
x = wctype ("xdigit");
CHECK (x != 0);
- CHECK (iswctype (L'B', x) && isxdigit ('B'));
+ CHECK (iswctype (L'B', x) && iswxdigit (L'B'));
x = wctype ("unknown");
CHECK (x == 0);