mirror of git://sourceware.org/git/glibc.git
Some headers did not include all of their prerequisite headers. * rpcsvc/nislib.h: Include rpcsvc/nis.h. * sysdeps/unix/sysv/linux/netrose/rose.h: Include sys/socket.h and netax25/ax25.h. <endian.h> only defines BYTE_ORDER, BIG_ENDIAN, LITTLE_ENDIAN, etc. under __USE_MISC; glibc's headers should use __BYTE_ORDER, __BIG_ENDIAN, __LITTLE_ENDIAN, etc. instead. * inet/netinet/icmp6.h, inet/netinet/ip6.h * resolv/arpa/nameser_compat.h: Use __BYTE_ORDER etc. instead of BYTE_ORDER etc. sys/types.h only conditionally defines caddr_t and clockid_t. * sysdeps/unix/sysv/linux/sys/quota.h: Use __caddr_t instead of caddr_t. * sysdeps/unix/sysv/linux/sys/timerfd.h: Use __clockid_t instead of clockid_t. Remove a #warning that was the sole actual problem with using sys/ipc.h without _GNU_SOURCE/_XOPEN_SOURCE. * sysvipc/sys/ipc.h: Remove unnecessary #warning. _LIBC, __USE_XOPEN2K8, and __STDC_VERSION__ are not always defined. It seems to me that _LIBC should not appear in installed headers, but avoiding that for argp specifically would require more surgery than feels appropriate for this patch set. It's possible that "#ifdef _LIBC" would be sufficient, but I wanted to be conservative. All three versions of bits/socket.h want to know whether __flexarr will produce a real flexible array member -- specifically, one that doesn't alter sizeof(the structure containing it). They were testing for this with a complicated #if condition that did not agree with sys/cdefs.h and that tripped -Wundef warnings under -std=c90. I added a new macro to sys/cdefs.h, __glibc_c99_flexarr_available, which reveals exactly what these headers want to know. I also took the opportunity to flatten the rather messy conditional nest defining __flexarr. * argp/argp.h: Check whether _LIBC is defined before expanding it. * posix/glob.h: Check whether __USE_XOPEN2K8 is defined instead of expanding it. * misc/sys/cdefs.h: Tidy up conditional nest defining __flexarr. Define __glibc_c99_flexarr_available to 1 when the compiler supports C99-compatible flexible array members, 0 otherwise. * sysdeps/unix/sysv/linux/bits/socket.h * sysdeps/mach/hurd/bits/socket.h * bits/socket.h: Use __glibc_c99_flexarr_available in definitions of struct cmsghdr and CMSG_DATA. |
||
|---|---|---|
| .. | ||
| byteswap-16.h | ||
| byteswap.h | ||
| confname.h | ||
| dirent.h | ||
| dlfcn.h | ||
| elfclass.h | ||
| endian.h | ||
| environments.h | ||
| errno.h | ||
| fcntl.h | ||
| fenv.h | ||
| fenvinline.h | ||
| huge_val.h | ||
| huge_valf.h | ||
| huge_vall.h | ||
| hwcap.h | ||
| in.h | ||
| inf.h | ||
| ioctl-types.h | ||
| ioctls.h | ||
| ipc.h | ||
| ipctypes.h | ||
| libc-header-start.h | ||
| libm-simd-decl-stubs.h | ||
| link.h | ||
| local_lim.h | ||
| math-vector.h | ||
| mathdef.h | ||
| mathinline.h | ||
| mman-linux.h | ||
| mman.h | ||
| mqueue.h | ||
| msq.h | ||
| nan.h | ||
| netdb.h | ||
| param.h | ||
| poll.h | ||
| posix_opt.h | ||
| pthreadtypes.h | ||
| resource.h | ||
| sched.h | ||
| select.h | ||
| sem.h | ||
| setjmp.h | ||
| shm.h | ||
| sigaction.h | ||
| sigcontext.h | ||
| siginfo.h | ||
| signum.h | ||
| sigset.h | ||
| sigstack.h | ||
| sigthread.h | ||
| sockaddr.h | ||
| socket.h | ||
| stat.h | ||
| statfs.h | ||
| statvfs.h | ||
| stdlib-bsearch.h | ||
| string.h | ||
| stropts.h | ||
| sys_errlist.h | ||
| syslog-path.h | ||
| sysmacros.h | ||
| termios.h | ||
| time.h | ||
| types.h | ||
| typesizes.h | ||
| uio.h | ||
| ustat.h | ||
| utmp.h | ||
| utsname.h | ||
| waitflags.h | ||
| waitstatus.h | ||
| wchar.h | ||
| wordsize.h | ||
| xtitypes.h | ||