* safe-ctype.h: Remove #error when detecting that ctype.h has been
included. Redefine the various macros provided by ctype.h as undefined variables.
This commit is contained in:
parent
608d5d8f36
commit
4261a8d107
|
@ -1,3 +1,9 @@
|
||||||
|
2008-07-04 Joel Brobecker <brobecker@adacore.com>
|
||||||
|
|
||||||
|
* safe-ctype.h: Remove #error when detecting that ctype.h has been
|
||||||
|
included. Redefine the various macros provided by ctype.h as
|
||||||
|
undefined variables.
|
||||||
|
|
||||||
2008-06-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
2008-06-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||||||
|
|
||||||
* libiberty.h (XALLOCA, XDUP, XALLOCAVEC, XDUPVEC, XALLOCAVAR,
|
* libiberty.h (XALLOCA, XDUP, XALLOCAVEC, XDUPVEC, XALLOCAVAR,
|
||||||
|
|
|
@ -35,10 +35,6 @@ Boston, MA 02110-1301, USA. */
|
||||||
#ifndef SAFE_CTYPE_H
|
#ifndef SAFE_CTYPE_H
|
||||||
#define SAFE_CTYPE_H
|
#define SAFE_CTYPE_H
|
||||||
|
|
||||||
#ifdef isalpha
|
|
||||||
#error "safe-ctype.h and ctype.h may not be used simultaneously"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Determine host character set. */
|
/* Determine host character set. */
|
||||||
#define HOST_CHARSET_UNKNOWN 0
|
#define HOST_CHARSET_UNKNOWN 0
|
||||||
#define HOST_CHARSET_ASCII 1
|
#define HOST_CHARSET_ASCII 1
|
||||||
|
@ -116,4 +112,36 @@ extern const unsigned char _sch_tolower[256];
|
||||||
#define TOUPPER(c) _sch_toupper[(c) & 0xff]
|
#define TOUPPER(c) _sch_toupper[(c) & 0xff]
|
||||||
#define TOLOWER(c) _sch_tolower[(c) & 0xff]
|
#define TOLOWER(c) _sch_tolower[(c) & 0xff]
|
||||||
|
|
||||||
|
/* Prevent the users of safe-ctype.h from accidently using the routines
|
||||||
|
from ctype.h. Initially, the approach was to produce an error when
|
||||||
|
detecting that ctype.h has been included. But this was causing
|
||||||
|
trouble as ctype.h might get indirectly included as a result of
|
||||||
|
including another system header (for instance gnulib's stdint.h). */
|
||||||
|
#undef isalpha
|
||||||
|
#define isalpha(c) do_not_use_isalpha_with_safe_ctype
|
||||||
|
#undef isalnum
|
||||||
|
#define isalnum(c) do_not_use_isalnum_with_safe_ctype
|
||||||
|
#undef iscntrl
|
||||||
|
#define iscntrl(c) do_not_use_iscntrl_with_safe_ctype
|
||||||
|
#undef isdigit
|
||||||
|
#define isdigit(c) do_not_use_isdigit_with_safe_ctype
|
||||||
|
#undef isgraph
|
||||||
|
#define isgraph(c) do_not_use_isgraph_with_safe_ctype
|
||||||
|
#undef islower
|
||||||
|
#define islower(c) do_not_use_islower_with_safe_ctype
|
||||||
|
#undef isprint
|
||||||
|
#define isprint(c) do_not_use_isprint_with_safe_ctype
|
||||||
|
#undef ispunct
|
||||||
|
#define ispunct(c) do_not_use_ispunct_with_safe_ctype
|
||||||
|
#undef isspace
|
||||||
|
#define isspace(c) do_not_use_isspace_with_safe_ctype
|
||||||
|
#undef isupper
|
||||||
|
#define isupper(c) do_not_use_isupper_with_safe_ctype
|
||||||
|
#undef isxdigit
|
||||||
|
#define isxdigit(c) do_not_use_isxdigit_with_safe_ctype
|
||||||
|
#undef toupper
|
||||||
|
#define toupper(c) do_not_use_toupper_with_safe_ctype
|
||||||
|
#undef tolower
|
||||||
|
#define tolower(c) do_not_use_tolower_with_safe_ctype
|
||||||
|
|
||||||
#endif /* SAFE_CTYPE_H */
|
#endif /* SAFE_CTYPE_H */
|
||||||
|
|
Loading…
Reference in New Issue