Avoid macro clash between <sys/select.h> and <linux/posix_types.h>

This commit is contained in:
Andreas Schwab 2011-09-13 14:41:37 +02:00
parent 52d4fef8be
commit e529793b50
6 changed files with 25 additions and 16 deletions

View File

@ -1,5 +1,15 @@
2011-09-13 Andreas Schwab <schwab@redhat.com> 2011-09-13 Andreas Schwab <schwab@redhat.com>
* misc/sys/select.h (__FD_MASK): Renamed from __FDMASK.
(__FD_ELT): Renamed from __FDELT.
* misc/bits/select2.h (__FD_ELT): Likewise.
* bits/select.h (__FD_SET, __FD_CLR, __FD_ISSET): Use __FD_ELT,
__FD_MASK instead of __FDELT, __FDMASK.
* sysdeps/i386/bits/select.h (__FD_SET, __FD_CLR, __FD_ISSET):
Likewise.
* sysdeps/x86_64/bits/select.h (__FD_SET, __FD_CLR, __FD_ISSET):
Likewise.
* elf/Makefile (gen-ldd): Fix pattern. * elf/Makefile (gen-ldd): Fix pattern.
* elf/rtld.c (dl_main): Only use USE___THREAD when defined. * elf/rtld.c (dl_main): Only use USE___THREAD when defined.

View File

@ -31,7 +31,8 @@
__FDS_BITS (__arr)[__i] = 0; \ __FDS_BITS (__arr)[__i] = 0; \
} while (0) } while (0)
#define __FD_SET(d, s) \ #define __FD_SET(d, s) \
((void) (__FDS_BITS (s)[__FDELT(d)] |= __FDMASK(d))) ((void) (__FDS_BITS (s)[__FD_ELT(d)] |= __FD_MASK(d)))
#define __FD_CLR(d, s) \ #define __FD_CLR(d, s) \
((void) (__FDS_BITS (s)[__FDELT(d)] &= ~__FDMASK(d))) ((void) (__FDS_BITS (s)[__FD_ELT(d)] &= ~__FD_MASK(d)))
#define __FD_ISSET(d, s) ((__FDS_BITS (s)[__FDELT (d)] & __FDMASK (d)) != 0) #define __FD_ISSET(d, s) \
((__FDS_BITS (s)[__FD_ELT (d)] & __FD_MASK (d)) != 0)

View File

@ -25,8 +25,8 @@
extern unsigned long int __fdelt_chk (unsigned long int __d); extern unsigned long int __fdelt_chk (unsigned long int __d);
extern unsigned long int __fdelt_warn (unsigned long int __d) extern unsigned long int __fdelt_warn (unsigned long int __d)
__warnattr ("bit outside of fd_set selected"); __warnattr ("bit outside of fd_set selected");
#undef __FDELT #undef __FD_ELT
#define __FDELT(d) \ #define __FD_ELT(d) \
({ unsigned long int __d = d; \ ({ unsigned long int __d = d; \
(__builtin_constant_p (__d) \ (__builtin_constant_p (__d) \
? (__d >= __FD_SETSIZE \ ? (__d >= __FD_SETSIZE \

View File

@ -54,14 +54,12 @@ typedef __suseconds_t suseconds_t;
/* The fd_set member is required to be an array of longs. */ /* The fd_set member is required to be an array of longs. */
typedef long int __fd_mask; typedef long int __fd_mask;
/* Some versions of <linux/posix_types.h> define these macros. */ /* Some versions of <linux/posix_types.h> define this macros. */
#undef __NFDBITS #undef __NFDBITS
#undef __FDELT
#undef __FDMASK
/* It's easier to assume 8-bit bytes than to get CHAR_BIT. */ /* It's easier to assume 8-bit bytes than to get CHAR_BIT. */
#define __NFDBITS (8 * (int) sizeof (__fd_mask)) #define __NFDBITS (8 * (int) sizeof (__fd_mask))
#define __FDELT(d) ((d) / __NFDBITS) #define __FD_ELT(d) ((d) / __NFDBITS)
#define __FDMASK(d) ((__fd_mask) 1 << ((d) % __NFDBITS)) #define __FD_MASK(d) ((__fd_mask) 1 << ((d) % __NFDBITS))
/* fd_set for select and pselect. */ /* fd_set for select and pselect. */
typedef struct typedef struct

View File

@ -48,8 +48,8 @@
#endif /* GNU CC */ #endif /* GNU CC */
#define __FD_SET(d, set) \ #define __FD_SET(d, set) \
((void) (__FDS_BITS (set)[__FDELT (d)] |= __FDMASK (d))) ((void) (__FDS_BITS (set)[__FD_ELT (d)] |= __FD_MASK (d)))
#define __FD_CLR(d, set) \ #define __FD_CLR(d, set) \
((void) (__FDS_BITS (set)[__FDELT (d)] &= ~__FDMASK (d))) ((void) (__FDS_BITS (set)[__FD_ELT (d)] &= ~__FD_MASK (d)))
#define __FD_ISSET(d, set) \ #define __FD_ISSET(d, set) \
((__FDS_BITS (set)[__FDELT (d)] & __FDMASK (d)) != 0) ((__FDS_BITS (set)[__FD_ELT (d)] & __FD_MASK (d)) != 0)

View File

@ -57,8 +57,8 @@
#endif /* GNU CC */ #endif /* GNU CC */
#define __FD_SET(d, set) \ #define __FD_SET(d, set) \
((void) (__FDS_BITS (set)[__FDELT (d)] |= __FDMASK (d))) ((void) (__FDS_BITS (set)[__FD_ELT (d)] |= __FD_MASK (d)))
#define __FD_CLR(d, set) \ #define __FD_CLR(d, set) \
((void) (__FDS_BITS (set)[__FDELT (d)] &= ~__FDMASK (d))) ((void) (__FDS_BITS (set)[__FD_ELT (d)] &= ~__FD_MASK (d)))
#define __FD_ISSET(d, set) \ #define __FD_ISSET(d, set) \
((__FDS_BITS (set)[__FDELT (d)] & __FDMASK (d)) != 0) ((__FDS_BITS (set)[__FD_ELT (d)] & __FD_MASK (d)) != 0)