From af1c257a9b6453c9364fa3bf301fb236fe90e664 Mon Sep 17 00:00:00 2001 From: Thomas Fitzsimmons Date: Tue, 18 Jun 2002 18:49:17 +0000 Subject: [PATCH] * libc/include/ctype.h: Remove isblank macro. * libc/ctype/Makefile.am (LIB_SOURCES): Add isblank.c. * libc/ctype/isblank.c: New file. * libc/include/ctype.h [!__STRICT_ANSI__]: Add isblank declaration. Add isblank macro. --- newlib/ChangeLog | 9 +++++++ newlib/libc/ctype/Makefile.am | 1 + newlib/libc/ctype/Makefile.in | 23 +++++++++--------- newlib/libc/ctype/isblank.c | 40 +++++++++++++++++++++++++++++++ newlib/libc/include/ctype.h | 1 + newlib/libc/sys/linux/sys/cdefs.h | 1 + 6 files changed, 64 insertions(+), 11 deletions(-) create mode 100644 newlib/libc/ctype/isblank.c diff --git a/newlib/ChangeLog b/newlib/ChangeLog index 154da62bf..c63ec3c90 100644 --- a/newlib/ChangeLog +++ b/newlib/ChangeLog @@ -1,3 +1,12 @@ +2002-06-18 Thomas Fitzsimmons + + * libc/include/ctype.h: Remove isblank macro. + + * libc/ctype/Makefile.am (LIB_SOURCES): Add isblank.c. + * libc/ctype/isblank.c: New file. + * libc/include/ctype.h [!__STRICT_ANSI__]: Add isblank + declaration. Add isblank macro. + 2002-06-18 Jeff Johnston * testsuite/newlib.stdlib/atexit.c: New file. diff --git a/newlib/libc/ctype/Makefile.am b/newlib/libc/ctype/Makefile.am index 477a14da7..216950c1b 100644 --- a/newlib/libc/ctype/Makefile.am +++ b/newlib/libc/ctype/Makefile.am @@ -9,6 +9,7 @@ LIB_SOURCES = \ isalnum.c \ isalpha.c \ isascii.c \ + isblank.c \ iscntrl.c \ isdigit.c \ islower.c \ diff --git a/newlib/libc/ctype/Makefile.in b/newlib/libc/ctype/Makefile.in index 3d94692c9..05d8810a0 100644 --- a/newlib/libc/ctype/Makefile.in +++ b/newlib/libc/ctype/Makefile.in @@ -113,6 +113,7 @@ LIB_SOURCES = \ isalnum.c \ isalpha.c \ isascii.c \ + isblank.c \ iscntrl.c \ isdigit.c \ islower.c \ @@ -172,21 +173,21 @@ LIBS = @LIBS@ lib_a_LIBADD = @USE_LIBTOOL_FALSE@lib_a_OBJECTS = ctype_.$(OBJEXT) isalnum.$(OBJEXT) \ @USE_LIBTOOL_FALSE@isalpha.$(OBJEXT) isascii.$(OBJEXT) \ -@USE_LIBTOOL_FALSE@iscntrl.$(OBJEXT) isdigit.$(OBJEXT) \ -@USE_LIBTOOL_FALSE@islower.$(OBJEXT) isupper.$(OBJEXT) \ -@USE_LIBTOOL_FALSE@isprint.$(OBJEXT) ispunct.$(OBJEXT) \ -@USE_LIBTOOL_FALSE@isspace.$(OBJEXT) isxdigit.$(OBJEXT) \ -@USE_LIBTOOL_FALSE@toascii.$(OBJEXT) tolower.$(OBJEXT) \ -@USE_LIBTOOL_FALSE@toupper.$(OBJEXT) _tolower.$(OBJEXT) \ -@USE_LIBTOOL_FALSE@_toupper.$(OBJEXT) +@USE_LIBTOOL_FALSE@isblank.$(OBJEXT) iscntrl.$(OBJEXT) \ +@USE_LIBTOOL_FALSE@isdigit.$(OBJEXT) islower.$(OBJEXT) \ +@USE_LIBTOOL_FALSE@isupper.$(OBJEXT) isprint.$(OBJEXT) \ +@USE_LIBTOOL_FALSE@ispunct.$(OBJEXT) isspace.$(OBJEXT) \ +@USE_LIBTOOL_FALSE@isxdigit.$(OBJEXT) toascii.$(OBJEXT) \ +@USE_LIBTOOL_FALSE@tolower.$(OBJEXT) toupper.$(OBJEXT) \ +@USE_LIBTOOL_FALSE@_tolower.$(OBJEXT) _toupper.$(OBJEXT) LTLIBRARIES = $(noinst_LTLIBRARIES) libctype_la_LIBADD = @USE_LIBTOOL_TRUE@libctype_la_OBJECTS = ctype_.lo isalnum.lo isalpha.lo \ -@USE_LIBTOOL_TRUE@isascii.lo iscntrl.lo isdigit.lo islower.lo \ -@USE_LIBTOOL_TRUE@isupper.lo isprint.lo ispunct.lo isspace.lo \ -@USE_LIBTOOL_TRUE@isxdigit.lo toascii.lo tolower.lo toupper.lo \ -@USE_LIBTOOL_TRUE@_tolower.lo _toupper.lo +@USE_LIBTOOL_TRUE@isascii.lo isblank.lo iscntrl.lo isdigit.lo \ +@USE_LIBTOOL_TRUE@islower.lo isupper.lo isprint.lo ispunct.lo \ +@USE_LIBTOOL_TRUE@isspace.lo isxdigit.lo toascii.lo tolower.lo \ +@USE_LIBTOOL_TRUE@toupper.lo _tolower.lo _toupper.lo CFLAGS = @CFLAGS@ COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) diff --git a/newlib/libc/ctype/isblank.c b/newlib/libc/ctype/isblank.c new file mode 100644 index 000000000..c75d8ab02 --- /dev/null +++ b/newlib/libc/ctype/isblank.c @@ -0,0 +1,40 @@ + +/* +FUNCTION + <>---blank character predicate + +INDEX + isblank + +ANSI_SYNOPSIS + #include + int isblank(int <[c]>); + +TRAD_SYNOPSIS + #include + int isblank(<[c]>); + +DESCRIPTION +<> is a macro which classifies ASCII integer values by table +lookup. It is a predicate returning non-zero for blank characters, and 0 +for other characters. + +You can use a compiled subroutine instead of the macro definition by +undefining the macro using `<<#undef isblank>>'. + +RETURNS +<> returns non-zero if <[c]> is a blank character. + +*/ + +#include <_ansi.h> +#include + + + +#undef isblank +int +_DEFUN(isblank,(c),int c) +{ + return (c == ' ' || c == '\t'); +} diff --git a/newlib/libc/include/ctype.h b/newlib/libc/include/ctype.h index 18dd02f70..194a52b19 100644 --- a/newlib/libc/include/ctype.h +++ b/newlib/libc/include/ctype.h @@ -21,6 +21,7 @@ int _EXFUN(tolower, (int __c)); int _EXFUN(toupper, (int __c)); #ifndef __STRICT_ANSI__ +int _EXFUN(isblank, (int __c)); int _EXFUN(isascii, (int __c)); int _EXFUN(toascii, (int __c)); int _EXFUN(_tolower, (int __c)); diff --git a/newlib/libc/sys/linux/sys/cdefs.h b/newlib/libc/sys/linux/sys/cdefs.h index a9759a7fa..f0b6a27b4 100644 --- a/newlib/libc/sys/linux/sys/cdefs.h +++ b/newlib/libc/sys/linux/sys/cdefs.h @@ -44,6 +44,7 @@ #ifndef _SYS_CDEFS_H #define _SYS_CDEFS_H +#define __FBSDID(x) /* nothing */ /* * Note: the goal here is not compatibility to K&R C. Since we know that we * have GCC which understands ANSI C perfectly well, we make use of this.