Browse Source

Don't define EOF In ctype.h, some 3rd party code checks whether or

not EOF is defined to determine if stdio.h has been included.
Instead, use __EOF which should be OK wrt namespace safety.
OPENBSD_3_3
millert 22 years ago
parent
commit
a9949c0ab0
2 changed files with 21 additions and 15 deletions
  1. +15
    -13
      src/include/ctype.h
  2. +6
    -2
      src/include/stdio.h

+ 15
- 13
src/include/ctype.h View File

@ -1,4 +1,4 @@
/* $OpenBSD: ctype.h,v 1.10 2002/12/15 13:53:39 millert Exp $ */
/* $OpenBSD: ctype.h,v 1.11 2002/12/29 03:02:35 millert Exp $ */
/* $NetBSD: ctype.h,v 1.14 1994/10/26 00:55:47 cgd Exp $ */ /* $NetBSD: ctype.h,v 1.14 1994/10/26 00:55:47 cgd Exp $ */
/* /*
@ -54,7 +54,9 @@
#define _X 0x40 #define _X 0x40
#define _B 0x80 #define _B 0x80
#define EOF (-1)
#ifndef __EOF
#define __EOF (-1) /* must match stdio.h */
#endif
extern const char *_ctype_; extern const char *_ctype_;
extern const short *_tolower_tab_; extern const short *_tolower_tab_;
@ -89,57 +91,57 @@ __END_DECLS
static __inline int isalnum(int c) static __inline int isalnum(int c)
{ {
return (c == EOF ? 0 : ((_ctype_ + 1)[(unsigned char)(c & 0xff)] & (_U|_L|_N)));
return (c == __EOF ? 0 : ((_ctype_ + 1)[(unsigned char)(c & 0xff)] & (_U|_L|_N)));
} }
static __inline int isalpha(int c) static __inline int isalpha(int c)
{ {
return (c == EOF ? 0 : ((_ctype_ + 1)[(unsigned char)(c & 0xff)] & (_U|_L)));
return (c == __EOF ? 0 : ((_ctype_ + 1)[(unsigned char)(c & 0xff)] & (_U|_L)));
} }
static __inline int iscntrl(int c) static __inline int iscntrl(int c)
{ {
return (c == EOF ? 0 : ((_ctype_ + 1)[(unsigned char)(c & 0xff)] & _C));
return (c == __EOF ? 0 : ((_ctype_ + 1)[(unsigned char)(c & 0xff)] & _C));
} }
static __inline int isdigit(int c) static __inline int isdigit(int c)
{ {
return (c == EOF ? 0 : ((_ctype_ + 1)[(unsigned char)(c & 0xff)] & _N));
return (c == __EOF ? 0 : ((_ctype_ + 1)[(unsigned char)(c & 0xff)] & _N));
} }
static __inline int isgraph(int c) static __inline int isgraph(int c)
{ {
return (c == EOF ? 0 : ((_ctype_ + 1)[(unsigned char)(c & 0xff)] & (_P|_U|_L|_N)));
return (c == __EOF ? 0 : ((_ctype_ + 1)[(unsigned char)(c & 0xff)] & (_P|_U|_L|_N)));
} }
static __inline int islower(int c) static __inline int islower(int c)
{ {
return (c == EOF ? 0 : ((_ctype_ + 1)[(unsigned char)(c & 0xff)] & _L));
return (c == __EOF ? 0 : ((_ctype_ + 1)[(unsigned char)(c & 0xff)] & _L));
} }
static __inline int isprint(int c) static __inline int isprint(int c)
{ {
return (c == EOF ? 0 : ((_ctype_ + 1)[(unsigned char)(c & 0xff)] & (_P|_U|_L|_N|_B)));
return (c == __EOF ? 0 : ((_ctype_ + 1)[(unsigned char)(c & 0xff)] & (_P|_U|_L|_N|_B)));
} }
static __inline int ispunct(int c) static __inline int ispunct(int c)
{ {
return (c == EOF ? 0 : ((_ctype_ + 1)[(unsigned char)(c & 0xff)] & _P));
return (c == __EOF ? 0 : ((_ctype_ + 1)[(unsigned char)(c & 0xff)] & _P));
} }
static __inline int isspace(int c) static __inline int isspace(int c)
{ {
return (c == EOF ? 0 : ((_ctype_ + 1)[(unsigned char)(c & 0xff)] & _S));
return (c == __EOF ? 0 : ((_ctype_ + 1)[(unsigned char)(c & 0xff)] & _S));
} }
static __inline int isupper(int c) static __inline int isupper(int c)
{ {
return (c == EOF ? 0 : ((_ctype_ + 1)[(unsigned char)(c & 0xff)] & _U));
return (c == __EOF ? 0 : ((_ctype_ + 1)[(unsigned char)(c & 0xff)] & _U));
} }
static __inline int isxdigit(int c) static __inline int isxdigit(int c)
{ {
return (c == EOF ? 0 : ((_ctype_ + 1)[(unsigned char)(c & 0xff)] & (_N|_X)));
return (c == __EOF ? 0 : ((_ctype_ + 1)[(unsigned char)(c & 0xff)] & (_N|_X)));
} }
static __inline int tolower(int c) static __inline int tolower(int c)


+ 6
- 2
src/include/stdio.h View File

@ -1,4 +1,4 @@
/* $OpenBSD: stdio.h,v 1.23 2002/10/25 21:55:28 millert Exp $ */
/* $OpenBSD: stdio.h,v 1.24 2002/12/29 03:02:34 millert Exp $ */
/* $NetBSD: stdio.h,v 1.18 1996/04/25 18:29:21 jtc Exp $ */ /* $NetBSD: stdio.h,v 1.18 1996/04/25 18:29:21 jtc Exp $ */
/*- /*-
@ -175,7 +175,11 @@ __END_DECLS
#define _IONBF 2 /* setvbuf should set unbuffered */ #define _IONBF 2 /* setvbuf should set unbuffered */
#define BUFSIZ 1024 /* size of buffer used by setbuf */ #define BUFSIZ 1024 /* size of buffer used by setbuf */
#define EOF (-1)
#ifndef __EOF
#define __EOF (-1)
#endif
#define EOF __EOF
/* /*
* FOPEN_MAX is a minimum maximum, and should be the number of descriptors * FOPEN_MAX is a minimum maximum, and should be the number of descriptors


Loading…
Cancel
Save