diff options
author | Aschref Ben Thabet <aschref.ben-thabet@embedded-brains.de> | 2020-07-16 10:28:49 +0200 |
---|---|---|
committer | Corinna Vinschen <corinna@vinschen.de> | 2020-07-16 11:27:38 +0200 |
commit | 0ee972d1b095bfea89499b358646e44d60aa4a4b (patch) | |
tree | 9e0a54391b8ffcaed2ed20c83589c2eefe55299c | |
parent | 52ad92e1b65d640d625f67dbd87e8193c3409db5 (diff) | |
download | cygnal-0ee972d1b095bfea89499b358646e44d60aa4a4b.tar.gz cygnal-0ee972d1b095bfea89499b358646e44d60aa4a4b.tar.bz2 cygnal-0ee972d1b095bfea89499b358646e44d60aa4a4b.zip |
ctype.h: Fix unused variable warnings
If __HAVE_LOCALE_INFO__ is not defined, then the locale in the
locale-specific ctype functions is ignored. In the previous
implementation this resulted in compiler warnings. For example:
int main()
{
locale_t locale;
locale = duplocale(uselocale((locale_t)0));
isspace_l('x', locale);
return 0;
}
gcc -Wall main.c
main.c: In function 'main':
main.c:6:11: warning: variable 'locale' set but not used [-Wunused-but-set-variable]
6 | locale_t locale;
| ^~~~~~
-rw-r--r-- | newlib/libc/include/ctype.h | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/newlib/libc/include/ctype.h b/newlib/libc/include/ctype.h index a0009af17..8b1013ac0 100644 --- a/newlib/libc/include/ctype.h +++ b/newlib/libc/include/ctype.h @@ -66,6 +66,9 @@ extern int toascii_l (int __c, locale_t __l); #define _X 0100 #define _B 0200 +/* For C++ backward-compatibility only. */ +extern __IMPORT const char _ctype_[]; + #ifdef __HAVE_LOCALE_INFO__ const char *__locale_ctype_ptr (void); #else @@ -108,7 +111,12 @@ const char *__locale_ctype_ptr (void); #ifdef __HAVE_LOCALE_INFO__ const char *__locale_ctype_ptr_l (locale_t); #else -#define __locale_ctype_ptr_l(l) _ctype_ +static __inline char * +__locale_ctype_ptr_l(locale_t _l) +{ + (void)_l; + return __locale_ctype_ptr(); +} #endif #define __ctype_lookup_l(__c,__l) ((__locale_ctype_ptr_l(__l)+sizeof(""[__c]))[(int)(__c)]) @@ -170,9 +178,6 @@ const char *__locale_ctype_ptr_l (locale_t); #endif /* !__cplusplus */ -/* For C++ backward-compatibility only. */ -extern __IMPORT const char _ctype_[]; - _END_STD_C #endif /* _CTYPE_H_ */ |