Skip to content

Commit

Permalink
Complete _BSD_SOURCE / _SVID_source followup cleanup.
Browse files Browse the repository at this point in the history
This patch completes the headers cleanup consequent on removal of
_BSD_SOURCE and _SVID_SOURCE (apart from any subsequent deprecations):

* #endif conditionals that referred to BSD or SVID are updated.

* Redundant __USE_* tests in cases involving __USE_MISC are removed.
  This includes cases such as __USE_MISC || __USE_ISOC99, where
  __USE_MISC is redundant (because __USE_MISC is only ever defined in
  the default / _DEFAULT_SOURCE / _GNU_SOURCE case, when __USE_ISOC99
  is also defined; the same applies to the non-XSI-extended POSIX
  versions), and cases involving __USE_GNU, where __USE_GNU is
  redundant (because if __USE_GNU is defined, so are the other __USE_*
  macros).  There may well be other cases of __USE_FOO || __USE_BAR
  tests that could be simplified because one macro implies the other;
  this patch only addresses cases involving __USE_MISC.

Tested x86_64.

	* bits/fcntl.h [__USE_MISC]: Remove redundant conditionals.
	* bits/sigaction.h [__USE_MISC]: Likewise.
	* bits/waitstatus.h: Update #endif comments.
	* ctype/ctype.h: Likewise.
	* dirent/dirent.h: Likewise.
	[__USE_MISC]: Remove redundant conditionals.
	* grp/grp.h: Update #endif comments.
	[__USE_GNU]: Remove redundant conditionals.
	[__USE_MISC]: Likewise.
	* inet/netinet/in.h [__USE_GNU]: Likewise.
	* io/sys/stat.h [__USE_MISC]: Likewise.
	* libio/bits/stdio-ldbl.h [__USE_MISC]: Likewise.
	* libio/bits/stdio.h: Update #endif comments.
	[__USE_MISC]: Remove redundant conditionals.
	* libio/bits/stdio2.h [__USE_MISC]: Likewise.
	* libio/stdio.h: Update #endif comments.
	[__USE_MISC]: Remove redundant conditionals.
	* math/bits/math-finite.h [__USE_MISC]: Likewise.
	* math/bits/mathcalls.h [__USE_MISC]: Likewise.
	* math/math.h: Update #else and #endif comments.
	[__USE_MISC]: Remove redundant conditionals.
	* misc/sys/uio.h: Update #endif comments.
	* posix/bits/unistd.h [__USE_MISC]: Remove redundant conditionals.
	* posix/glob.h [__USE_MISC]: Likewise.
	* posix/sys/types.h: Update #endif comments.
	[__USE_MISC]: Remove redundant conditionals.
	* posix/sys/wait.h: Update #endif comments.
	[__USE_MISC]: Remove redundant conditionals.
	* posix/unistd.h: Update #endif comments.
	[__USE_MISC]: Remove redundant conditionals.
	* pwd/pwd.h [__USE_GNU]: Likewise.
	[__USE_MISC]: Likewise.
	* resolv/netdb.h [__USE_GNU]: Likewise.
	* signal/signal.h: Update #endif comments.
	[__USE_MISC]: Remove redundant conditionals.
	* stdlib/stdlib.h: Update #else and #endif comments.
	[__USE_MISC]: Remove redundant conditionals.
	[__USE_GNU]: Likewise.
	* string/bits/string2.h [__USE_MISC]: Likewise.
	* string/string.h: Update #endif comments.
	[__USE_MISC]: Remove redundant conditionals.
	* sysdeps/m68k/m680x0/fpu/bits/mathinline.h [__USE_MISC]:
	Likewise.
	* sysdeps/mach/hurd/bits/fcntl.h [__USE_MISC]: Likewise.
	* sysdeps/mach/hurd/bits/stat.h [__USE_MISC]: Likewise.
	* sysdeps/unix/sysv/linux/alpha/bits/sigaction.h [__USE_MISC]:
	Likewise.
	* sysdeps/unix/sysv/linux/alpha/bits/stat.h [__USE_MISC]:
	Likewise.
	* sysdeps/unix/sysv/linux/bits/fcntl-linux.h: Update #endif
	comments.
	[__USE_MISC]: Remove redundant conditionals.
	* sysdeps/unix/sysv/linux/bits/in.h [__USE_GNU]: Likewise.
	* sysdeps/unix/sysv/linux/bits/sigaction.h [__USE_MISC]: Likewise.
	* sysdeps/unix/sysv/linux/bits/socket.h [__USE_GNU]: Likewise.
	* sysdeps/unix/sysv/linux/bits/stat.h [__USE_MISC]: Likewise.
	* sysdeps/unix/sysv/linux/ia64/bits/sigaction.h [__USE_MISC]:
	Likewise.
	* sysdeps/unix/sysv/linux/m68k/bits/stat.h [__USE_MISC]: Likewise.
	* sysdeps/unix/sysv/linux/mips/bits/sigaction.h [__USE_MISC]:
	Likewise.
	* sysdeps/unix/sysv/linux/mips/bits/stat.h [__USE_MISC]: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/bits/stat.h [__USE_MISC]:
	Likewise.
	* sysdeps/unix/sysv/linux/s390/bits/sigaction.h [__USE_MISC]:
	Likewise.
	* sysdeps/unix/sysv/linux/s390/bits/stat.h [__USE_MISC]: Likewise.
	* sysdeps/unix/sysv/linux/sparc/bits/sigaction.h [__USE_MISC]:
	Likewise.
	* sysdeps/unix/sysv/linux/sparc/bits/stat.h [__USE_MISC]:
	Likewise.
	* sysdeps/unix/sysv/linux/x86/bits/stat.h [__USE_MISC]: Likewise.
	* sysdeps/x86/bits/string.h: Update #endif comments.
	* sysdeps/x86/fpu/bits/mathinline.h [__USE_MISC]: Remove redundant
	conditionals.
	* time/sys/time.h: Update #endif comments.
	* time/time.h: Likewise.
	[__USE_MISC]: Remove redundant conditionals.
  • Loading branch information
Joseph Myers committed Feb 21, 2014
1 parent a5d82e4 commit acd7f09
Show file tree
Hide file tree
Showing 52 changed files with 255 additions and 178 deletions.
81 changes: 81 additions & 0 deletions ChangeLog
Original file line number Diff line number Diff line change
@@ -1,3 +1,84 @@
2014-02-21 Joseph Myers <joseph@codesourcery.com>

* bits/fcntl.h [__USE_MISC]: Remove redundant conditionals.
* bits/sigaction.h [__USE_MISC]: Likewise.
* bits/waitstatus.h: Update #endif comments.
* ctype/ctype.h: Likewise.
* dirent/dirent.h: Likewise.
[__USE_MISC]: Remove redundant conditionals.
* grp/grp.h: Update #endif comments.
[__USE_GNU]: Remove redundant conditionals.
[__USE_MISC]: Likewise.
* inet/netinet/in.h [__USE_GNU]: Likewise.
* io/sys/stat.h [__USE_MISC]: Likewise.
* libio/bits/stdio-ldbl.h [__USE_MISC]: Likewise.
* libio/bits/stdio.h: Update #endif comments.
[__USE_MISC]: Remove redundant conditionals.
* libio/bits/stdio2.h [__USE_MISC]: Likewise.
* libio/stdio.h: Update #endif comments.
[__USE_MISC]: Remove redundant conditionals.
* math/bits/math-finite.h [__USE_MISC]: Likewise.
* math/bits/mathcalls.h [__USE_MISC]: Likewise.
* math/math.h: Update #else and #endif comments.
[__USE_MISC]: Remove redundant conditionals.
* misc/sys/uio.h: Update #endif comments.
* posix/bits/unistd.h [__USE_MISC]: Remove redundant conditionals.
* posix/glob.h [__USE_MISC]: Likewise.
* posix/sys/types.h: Update #endif comments.
[__USE_MISC]: Remove redundant conditionals.
* posix/sys/wait.h: Update #endif comments.
[__USE_MISC]: Remove redundant conditionals.
* posix/unistd.h: Update #endif comments.
[__USE_MISC]: Remove redundant conditionals.
* pwd/pwd.h [__USE_GNU]: Likewise.
[__USE_MISC]: Likewise.
* resolv/netdb.h [__USE_GNU]: Likewise.
* signal/signal.h: Update #endif comments.
[__USE_MISC]: Remove redundant conditionals.
* stdlib/stdlib.h: Update #else and #endif comments.
[__USE_MISC]: Remove redundant conditionals.
[__USE_GNU]: Likewise.
* string/bits/string2.h [__USE_MISC]: Likewise.
* string/string.h: Update #endif comments.
[__USE_MISC]: Remove redundant conditionals.
* sysdeps/m68k/m680x0/fpu/bits/mathinline.h [__USE_MISC]:
Likewise.
* sysdeps/mach/hurd/bits/fcntl.h [__USE_MISC]: Likewise.
* sysdeps/mach/hurd/bits/stat.h [__USE_MISC]: Likewise.
* sysdeps/unix/sysv/linux/alpha/bits/sigaction.h [__USE_MISC]:
Likewise.
* sysdeps/unix/sysv/linux/alpha/bits/stat.h [__USE_MISC]:
Likewise.
* sysdeps/unix/sysv/linux/bits/fcntl-linux.h: Update #endif
comments.
[__USE_MISC]: Remove redundant conditionals.
* sysdeps/unix/sysv/linux/bits/in.h [__USE_GNU]: Likewise.
* sysdeps/unix/sysv/linux/bits/sigaction.h [__USE_MISC]: Likewise.
* sysdeps/unix/sysv/linux/bits/socket.h [__USE_GNU]: Likewise.
* sysdeps/unix/sysv/linux/bits/stat.h [__USE_MISC]: Likewise.
* sysdeps/unix/sysv/linux/ia64/bits/sigaction.h [__USE_MISC]:
Likewise.
* sysdeps/unix/sysv/linux/m68k/bits/stat.h [__USE_MISC]: Likewise.
* sysdeps/unix/sysv/linux/mips/bits/sigaction.h [__USE_MISC]:
Likewise.
* sysdeps/unix/sysv/linux/mips/bits/stat.h [__USE_MISC]: Likewise.
* sysdeps/unix/sysv/linux/powerpc/bits/stat.h [__USE_MISC]:
Likewise.
* sysdeps/unix/sysv/linux/s390/bits/sigaction.h [__USE_MISC]:
Likewise.
* sysdeps/unix/sysv/linux/s390/bits/stat.h [__USE_MISC]: Likewise.
* sysdeps/unix/sysv/linux/sparc/bits/sigaction.h [__USE_MISC]:
Likewise.
* sysdeps/unix/sysv/linux/sparc/bits/stat.h [__USE_MISC]:
Likewise.
* sysdeps/unix/sysv/linux/x86/bits/stat.h [__USE_MISC]: Likewise.
* sysdeps/x86/bits/string.h: Update #endif comments.
* sysdeps/x86/fpu/bits/mathinline.h [__USE_MISC]: Remove redundant
conditionals.
* time/sys/time.h: Update #endif comments.
* time/time.h: Likewise.
[__USE_MISC]: Remove redundant conditionals.

2014-02-21 Yury Gribov <y.gribov@samsung.com>

[BZ #16600]
Expand Down
2 changes: 1 addition & 1 deletion bits/fcntl.h
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@
#define F_SETFD 2 /* Set file descriptor flags. */
#define F_GETFL 3 /* Get file status flags. */
#define F_SETFL 4 /* Set file status flags. */
#if defined __USE_MISC || defined __USE_UNIX98 || defined __USE_XOPEN2K8
#if defined __USE_UNIX98 || defined __USE_XOPEN2K8
#define F_GETOWN 5 /* Get owner (receiver of SIGIO). */
#define F_SETOWN 6 /* Set owner (receiver of SIGIO). */
#endif
Expand Down
2 changes: 1 addition & 1 deletion bits/sigaction.h
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ struct sigaction
#if defined __USE_UNIX98 || defined __USE_MISC
# define SA_ONSTACK 0x0001 /* Take signal on signal stack. */
#endif
#if defined __USE_UNIX98 || defined __USE_MISC || defined __USE_XOPEN2K8
#if defined __USE_UNIX98 || defined __USE_XOPEN2K8
# define SA_RESTART 0x0002 /* Restart syscall on signal return. */
# define SA_NODEFER 0x0010 /* Don't automatically block the signal when
its handler is being executed. */
Expand Down
2 changes: 1 addition & 1 deletion bits/waitstatus.h
Original file line number Diff line number Diff line change
Expand Up @@ -102,4 +102,4 @@ union wait
# define w_stopsig __wait_stopped.__w_stopsig
# define w_stopval __wait_stopped.__w_stopval

#endif /* Use BSD. */
#endif /* Use misc. */
2 changes: 1 addition & 1 deletion ctype/ctype.h
Original file line number Diff line number Diff line change
Expand Up @@ -157,7 +157,7 @@ extern int toascii (int __c) __THROW;
check the argument for being in the range of a `char'. */
__exctype (_toupper);
__exctype (_tolower);
#endif /* Use SVID or use misc. */
#endif /* Use X/Open or use misc. */

/* This code is needed for the optimized mapping functions. */
#define __tobody(c, f, a, args) \
Expand Down
8 changes: 4 additions & 4 deletions dirent/dirent.h
Original file line number Diff line number Diff line change
Expand Up @@ -173,7 +173,7 @@ extern struct dirent *__REDIRECT (readdir, (DIR *__dirp), readdir64)
extern struct dirent64 *readdir64 (DIR *__dirp) __nonnull ((1));
#endif

#if defined __USE_POSIX || defined __USE_MISC
#ifdef __USE_POSIX
/* Reentrant version of `readdir'. Return in RESULT a pointer to the
next entry.
Expand Down Expand Up @@ -217,7 +217,7 @@ extern void seekdir (DIR *__dirp, long int __pos) __THROW __nonnull ((1));
extern long int telldir (DIR *__dirp) __THROW __nonnull ((1));
#endif

#if defined __USE_MISC || defined __USE_XOPEN2K8
#ifdef __USE_XOPEN2K8

/* Return the file descriptor used by DIRP. */
extern int dirfd (DIR *__dirp) __THROW __nonnull ((1));
Expand Down Expand Up @@ -340,7 +340,7 @@ extern int alphasort64 (const struct dirent64 **__e1,
const struct dirent64 **__e2)
__THROW __attribute_pure__ __nonnull ((1, 2));
# endif
#endif /* Use BSD or misc or XPG7. */
#endif /* Use XPG7. */


#ifdef __USE_MISC
Expand Down Expand Up @@ -371,7 +371,7 @@ extern __ssize_t getdirentries64 (int __fd, char *__restrict __buf,
__off64_t *__restrict __basep)
__THROW __nonnull ((2, 4));
# endif
#endif /* Use BSD or misc. */
#endif /* Use misc. */

#ifdef __USE_GNU
/* Function to compare two `struct dirent's by name & version. */
Expand Down
9 changes: 4 additions & 5 deletions grp/grp.h
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ struct group
};


#if defined __USE_MISC || defined __USE_GNU
#ifdef __USE_MISC
# define __need_FILE
# include <stdio.h>
#endif
Expand All @@ -62,8 +62,7 @@ struct group
extern void setgrent (void);
#endif

#if defined __USE_MISC || defined __USE_XOPEN_EXTENDED \
|| defined __USE_XOPEN2K8
#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8
/* Close the group-file stream.
This function is a possible cancellation point and therefore not
Expand Down Expand Up @@ -110,7 +109,7 @@ extern struct group *getgrgid (__gid_t __gid);
marked with __THROW. */
extern struct group *getgrnam (const char *__name);

#if defined __USE_POSIX || defined __USE_MISC
#ifdef __USE_POSIX

# ifdef __USE_MISC
/* Reasonable value for the buffer sized used in the reentrant
Expand Down Expand Up @@ -200,7 +199,7 @@ extern int getgrouplist (const char *__user, __gid_t __group,
therefore not marked with __THROW. */
extern int initgroups (const char *__user, __gid_t __group);

#endif /* Use BSD. */
#endif /* Use misc. */

__END_DECLS

Expand Down
10 changes: 5 additions & 5 deletions inet/netinet/in.h
Original file line number Diff line number Diff line change
Expand Up @@ -211,13 +211,13 @@ struct in6_addr
union
{
uint8_t __u6_addr8[16];
#if defined __USE_MISC || defined __USE_GNU
#ifdef __USE_MISC
uint16_t __u6_addr16[8];
uint32_t __u6_addr32[4];
#endif
} __in6_u;
#define s6_addr __in6_u.__u6_addr8
#if defined __USE_MISC || defined __USE_GNU
#ifdef __USE_MISC
# define s6_addr16 __in6_u.__u6_addr16
# define s6_addr32 __in6_u.__u6_addr32
#endif
Expand Down Expand Up @@ -259,7 +259,7 @@ struct sockaddr_in6
};
#endif /* !__USE_KERNEL_IPV6_DEFS */

#if defined __USE_MISC || defined __USE_GNU
#ifdef __USE_MISC
/* IPv4 multicast request. */
struct ip_mreq
{
Expand Down Expand Up @@ -295,7 +295,7 @@ struct ipv6_mreq
};
#endif /* !__USE_KERNEL_IPV6_DEFS */

#if defined __USE_MISC || defined __USE_GNU
#ifdef __USE_MISC
/* Multicast group request. */
struct group_req
{
Expand Down Expand Up @@ -496,7 +496,7 @@ extern uint16_t htons (uint16_t __hostshort)

#define IN6_IS_ADDR_MULTICAST(a) (((const uint8_t *) (a))[0] == 0xff)

#if defined __USE_MISC || defined __USE_GNU
#ifdef __USE_MISC
/* Bind socket to a privileged IP port. */
extern int bindresvport (int __sockfd, struct sockaddr_in *__sock_in) __THROW;

Expand Down
11 changes: 5 additions & 6 deletions io/sys/stat.h
Original file line number Diff line number Diff line change
Expand Up @@ -26,12 +26,11 @@

#include <bits/types.h> /* For __mode_t and __dev_t. */

#if defined __USE_XOPEN || defined __USE_XOPEN2K || defined __USE_MISC \
|| defined __USE_ATFILE
#if defined __USE_XOPEN || defined __USE_XOPEN2K || defined __USE_ATFILE
# if defined __USE_XOPEN || defined __USE_XOPEN2K
# define __need_time_t
# endif
# if defined __USE_MISC || defined __USE_ATFILE
# ifdef __USE_ATFILE
# define __need_timespec
# endif
# include <time.h> /* For time_t resp. timespec. */
Expand Down Expand Up @@ -141,7 +140,7 @@ __BEGIN_DECLS
# define S_ISLNK(mode) 0
#endif

#if (defined __USE_MISC || defined __USE_UNIX98 || defined __USE_XOPEN2K) \
#if (defined __USE_UNIX98 || defined __USE_XOPEN2K) \
&& defined __S_IFSOCK
# define S_ISSOCK(mode) __S_ISTYPE((mode), __S_IFSOCK)
#elif defined __USE_XOPEN2K
Expand Down Expand Up @@ -256,7 +255,7 @@ extern int fstatat64 (int __fd, const char *__restrict __file,
# endif
#endif

#if defined __USE_MISC || defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K
#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K
# ifndef __USE_FILE_OFFSET64
/* Get file attributes about FILE and put them in BUF.
If FILE is a symbolic link, do not follow it. */
Expand Down Expand Up @@ -293,7 +292,7 @@ extern int lchmod (const char *__file, __mode_t __mode)
#endif

/* Set file access permissions of the file FD is open on to MODE. */
#if defined __USE_MISC || defined __USE_POSIX
#ifdef __USE_POSIX
extern int fchmod (int __fd, __mode_t __mode) __THROW;
#endif

Expand Down
4 changes: 2 additions & 2 deletions libio/bits/stdio-ldbl.h
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ __LDBL_REDIR_DECL (sscanf)
#endif
__END_NAMESPACE_STD

#if defined __USE_MISC || defined __USE_ISOC99 || defined __USE_UNIX98
#if defined __USE_ISOC99 || defined __USE_UNIX98
__BEGIN_NAMESPACE_C99
__LDBL_REDIR_DECL (snprintf)
__LDBL_REDIR_DECL (vsnprintf)
Expand Down Expand Up @@ -78,7 +78,7 @@ __LDBL_REDIR_DECL (obstack_vprintf)
#if __USE_FORTIFY_LEVEL > 0 && defined __fortify_function
__LDBL_REDIR_DECL (__sprintf_chk)
__LDBL_REDIR_DECL (__vsprintf_chk)
# if defined __USE_MISC || defined __USE_ISOC99 || defined __USE_UNIX98
# if defined __USE_ISOC99 || defined __USE_UNIX98
__LDBL_REDIR_DECL (__snprintf_chk)
__LDBL_REDIR_DECL (__vsnprintf_chk)
# endif
Expand Down
8 changes: 4 additions & 4 deletions libio/bits/stdio.h
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ fgetc_unlocked (FILE *__fp)
# endif /* misc */


# if defined __USE_POSIX || defined __USE_MISC
# ifdef __USE_POSIX
/* This is defined in POSIX.1:1996. */
__STDIO_INLINE int
getc_unlocked (FILE *__fp)
Expand All @@ -71,7 +71,7 @@ getchar_unlocked (void)
{
return _IO_getc_unlocked (stdin);
}
# endif /* POSIX || misc */
# endif /* POSIX */


/* Write a character to stdout. */
Expand All @@ -92,7 +92,7 @@ fputc_unlocked (int __c, FILE *__stream)
# endif /* misc */


# if defined __USE_POSIX || defined __USE_MISC
# ifdef __USE_POSIX
/* This is defined in POSIX.1:1996. */
__STDIO_INLINE int
putc_unlocked (int __c, FILE *__stream)
Expand All @@ -106,7 +106,7 @@ putchar_unlocked (int __c)
{
return _IO_putc_unlocked (__c, stdout);
}
# endif /* POSIX || misc */
# endif /* POSIX */


# ifdef __USE_GNU
Expand Down
2 changes: 1 addition & 1 deletion libio/bits/stdio2.h
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ __NTH (vsprintf (char *__restrict __s, const char *__restrict __fmt,
__bos (__s), __fmt, __ap);
}

#if defined __USE_MISC || defined __USE_ISOC99 || defined __USE_UNIX98
#if defined __USE_ISOC99 || defined __USE_UNIX98

extern int __snprintf_chk (char *__restrict __s, size_t __n, int __flag,
size_t __slen, const char *__restrict __format,
Expand Down
Loading

0 comments on commit acd7f09

Please sign in to comment.