From fa1861d9fc31366afbcb640ecfb64d7ce646de8d Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Sun, 1 Sep 2002 18:27:42 +0000 Subject: Update. 2002-09-01 Ulrich Drepper * ctype/Makefile (routines): Add isctype. * ctype/Versions (libc): Export isctype and __isctype for GLIBC_2.3. * ctype/ctype.h: Add declaration of isctype. * include/ctype.h: Declare __isctype. * ctype/isctype.c: New file. --- ctype/Makefile | 4 ++-- ctype/Versions | 3 +++ ctype/ctype.h | 5 +++++ ctype/isctype.c | 31 +++++++++++++++++++++++++++++++ 4 files changed, 41 insertions(+), 2 deletions(-) create mode 100644 ctype/isctype.c (limited to 'ctype') diff --git a/ctype/Makefile b/ctype/Makefile index d14348feba..eaf4d32314 100644 --- a/ctype/Makefile +++ b/ctype/Makefile @@ -1,4 +1,4 @@ -# Copyright (C) 1991, 1992, 1993, 1997 Free Software Foundation, Inc. +# Copyright (C) 1991, 1992, 1993, 1997, 2002 Free Software Foundation, Inc. # This file is part of the GNU C Library. # The GNU C Library is free software; you can redistribute it and/or @@ -22,7 +22,7 @@ subdir := ctype headers := ctype.h -routines := ctype ctype-extn ctype_l +routines := ctype ctype-extn ctype_l isctype aux := ctype-info tests := test_ctype diff --git a/ctype/Versions b/ctype/Versions index 68df144f6d..f77b5be5b3 100644 --- a/ctype/Versions +++ b/ctype/Versions @@ -15,4 +15,7 @@ libc { # global variables __ctype32_tolower; __ctype32_toupper; } + GLIBC_2.3 { + isctype; __isctype; + } } diff --git a/ctype/ctype.h b/ctype/ctype.h index 9469907b27..64f5e4b7a0 100644 --- a/ctype/ctype.h +++ b/ctype/ctype.h @@ -104,6 +104,11 @@ __exctype (isblank); __END_NAMESPACE_C99 #endif +#ifdef __USE_GNU +/* Test C for a set of character classes according to MASK. */ +extern int isctype (int __c, int __mask) __THROW; +#endif + #if defined __USE_SVID || defined __USE_MISC || defined __USE_XOPEN /* Return nonzero iff C is in the ASCII set diff --git a/ctype/isctype.c b/ctype/isctype.c new file mode 100644 index 0000000000..a04da3eb56 --- /dev/null +++ b/ctype/isctype.c @@ -0,0 +1,31 @@ +/* Copyright (C) 2002 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, write to the Free + Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA + 02111-1307 USA. */ + +#include + +#undef __isctype + +int +__isctype (ch, mask) + int ch; + int mask; +{ + return (((uint16_t *) _NL_CURRENT (LC_CTYPE, _NL_CTYPE_CLASS) + 128) + [(int) (ch)] & mask); +} +weak_alias (__isctype, isctype) -- cgit v1.2.3