X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=lib%2Fstrtol.c;h=6d5f4ac4d492e7c6de9d67ffae2611a115aad2a7;hb=0bb0c42bbc23b604ec21f3f9e30363eb17fdc484;hp=0d3ec1bab782ee6c44f3408d8e0faa07721ee59e;hpb=77d822a7b4241b5f0317140fb5194abc1d59c38f;p=gnulib.git diff --git a/lib/strtol.c b/lib/strtol.c index 0d3ec1bab..6d5f4ac4d 100644 --- a/lib/strtol.c +++ b/lib/strtol.c @@ -129,12 +129,17 @@ extern int errno; # define ISALPHA(Ch) iswalpha (Ch) # define TOUPPER(Ch) towupper (Ch) #else +# if defined (STDC_HEADERS) || (!defined (isascii) && !defined (HAVE_ISASCII)) +# define IN_CTYPE_DOMAIN(c) 1 +# else +# define IN_CTYPE_DOMAIN(c) isascii(c) +# endif # define L_(Ch) Ch # define UCHAR_TYPE unsigned char # define STRING_TYPE char -# define ISSPACE(Ch) isspace (Ch) -# define ISALPHA(Ch) isalpha (Ch) -# define TOUPPER(Ch) toupper (Ch) +# define ISSPACE(Ch) (IN_CTYPE_DOMAIN (Ch) && isspace (Ch)) +# define ISALPHA(Ch) (IN_CTYPE_DOMAIN (Ch) && isalpha (Ch)) +# define TOUPPER(Ch) (IN_CTYPE_DOMAIN (Ch) ? toupper (Ch) : (Ch)) #endif #ifdef __STDC__