public inbox for newlib-cvs@sourceware.org
help / color / mirror / Atom feed
* [newlib-cygwin] ctype.h: Fix unused variable warnings
@ 2020-07-16  9:30 Corinna Vinschen
  0 siblings, 0 replies; only message in thread
From: Corinna Vinschen @ 2020-07-16  9:30 UTC (permalink / raw)
  To: newlib-cvs

https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=0ee972d1b095bfea89499b358646e44d60aa4a4b

commit 0ee972d1b095bfea89499b358646e44d60aa4a4b
Author: Aschref Ben Thabet <aschref.ben-thabet@embedded-brains.de>
Date:   Thu Jul 16 10:28:49 2020 +0200

    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;
          |           ^~~~~~

Diff:
---
 newlib/libc/include/ctype.h | 13 +++++++++----
 1 file 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_ */


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2020-07-16  9:30 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-07-16  9:30 [newlib-cygwin] ctype.h: Fix unused variable warnings Corinna Vinschen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).