diff --git a/ChangeLog b/ChangeLog index 250a28f8c9..83945bcaf6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,24 @@ +1999-06-23 Zack Weinberg + + * libio/stdio.h: Define stdin, stdout, stderr as macros. + * math/complex.h: Don't define + CX_LIMITED_RANGE_{ON,OFF,DEFAULT}. These are *pragmas* not + macros. + * wcsmbs/wchar.h: Fix comment. + + * grp/grp.h: Use __foo_t_defined convention to typedef things + only once. + * io/sys/stat.h: Likewise. + * libio/stdio.h: Likewise. + * posix/unistd.h: Likewise. + * posix/sys/types.h: Likewise. + * posix/sys/wait.h: Likewise. + * pwd/pwd.h: Likewise. + * signal/signal.h: Likewise. + * sysdeps/generic/stdint.h: Likewise. + * sysdeps/gnu/utmpx.h: Likewise. + * termios/termios.h: Likewise. + 1999-06-23 Ulrich Drepper * stdio/fputc.c: Don't define alias if fputc is defined as a diff --git a/grp/grp.h b/grp/grp.h index 45cb6de664..ae921bb876 100644 --- a/grp/grp.h +++ b/grp/grp.h @@ -34,9 +34,9 @@ __BEGIN_DECLS /* For the Single Unix specification we must define this type here. */ -#if defined __USE_XOPEN && !defined gid_t +#if defined __USE_XOPEN && !defined __gid_t_defined typedef __gid_t gid_t; -# define gid_t gid_t +# define __gid_t_defined #endif /* The group structure. */ diff --git a/io/sys/stat.h b/io/sys/stat.h index 8269c4bb0f..058c91e51b 100644 --- a/io/sys/stat.h +++ b/io/sys/stat.h @@ -33,54 +33,54 @@ /* The Single Unix specification says that some more types are available here. */ -# ifndef dev_t +# ifndef __dev_t_defined typedef __dev_t dev_t; -# define dev_t dev_t +# define __dev_t_defined # endif -# ifndef gid_t +# ifndef __gid_t_defined typedef __gid_t gid_t; -# define gid_t gid_t +# define __gid_t_defined # endif -# ifndef ino_t +# ifndef __ino_t_defined # ifndef __USE_FILE_OFFSET64 typedef __ino_t ino_t; # else typedef __ino64_t ino_t; # endif -# define ino_t ino_t +# define __ino_t_defined # endif -# ifndef mode_t +# ifndef __mode_t_defined typedef __mode_t mode_t; -# define mode_t mode_t +# define __mode_t_defined # endif -# ifndef nlink_t +# ifndef __nlink_t_defined typedef __nlink_t nlink_t; -# define nlink_t nlink_t +# define __nlink_t_defined # endif -# ifndef off_t +# ifndef __off_t_defined # ifndef __USE_FILE_OFFSET64 typedef __off_t off_t; # else typedef __off64_t off_t; # endif -# define off_t off_t +# define __off_t_defined # endif -# ifndef uid_t +# ifndef __uid_t_defined typedef __uid_t uid_t; -# define uid_t uid_t +# define __uid_t_defined # endif #endif /* X/Open */ #ifdef __USE_UNIX98 -# ifndef pid_t +# ifndef __pid_t_defined typedef __pid_t pid_t; -# define pid_t pid_t +# define __pid_t_defined # endif #endif /* Unix98 */ diff --git a/libio/stdio.h b/libio/stdio.h index 6056652bf9..3c726c8ce5 100644 --- a/libio/stdio.h +++ b/libio/stdio.h @@ -114,7 +114,10 @@ typedef _G_fpos64_t fpos64_t; extern FILE *stdin; /* Standard input stream. */ extern FILE *stdout; /* Standard output stream. */ extern FILE *stderr; /* Standard error output stream. */ - +/* C89/C9x say they're macros. Make them happy. */ +#define stdin stdin +#define stdout stdout +#define stderr stderr /* Remove file FILENAME. */ extern int remove __P ((__const char *__filename)); @@ -468,18 +471,18 @@ extern void rewind __P ((FILE *__stream)); are originally defined in the Large File Support API. */ /* Types needed in these functions. */ -#ifndef off_t +#ifndef __off_t_defined # ifndef __USE_FILE_OFFSET64 typedef __off_t off_t; # else typedef __off64_t off_t; # endif -# define off_t off_t +# define __off_t_defined #endif -#if defined __USE_LARGEFILE64 && !defined off64_t +#if defined __USE_LARGEFILE64 && !defined __off64_t_defined typedef __off64_t off64_t; -# define off64_t off64_t +# define __off64_t_defined #endif diff --git a/math/complex.h b/math/complex.h index 82fae63163..3bb5d1b229 100644 --- a/math/complex.h +++ b/math/complex.h @@ -48,14 +48,6 @@ __BEGIN_DECLS #undef I #define I _Complex_I - -/* Optimization aids. This is not yet implemented in gcc and once it - is this will probably be available in a gcc header. */ -#define CX_LIMITED_RANGE_ON -#define CX_LIMITED_RANGE_OFF -#define CX_LIMITED_RANGE_DEFAULT - - /* The file contains the prototypes for all the actual math functions. These macros are used for those prototypes, so we can easily declare each function as both `name' and `__name', diff --git a/posix/sys/types.h b/posix/sys/types.h index 362d547c08..61d46f27dc 100644 --- a/posix/sys/types.h +++ b/posix/sys/types.h @@ -41,68 +41,68 @@ typedef __fsid_t fsid_t; typedef __loff_t loff_t; -#ifndef ino_t +#ifndef __ino_t_defined # ifndef __USE_FILE_OFFSET64 typedef __ino_t ino_t; # else typedef __ino64_t ino_t; # endif -# define ino_t ino_t +# define __ino_t_defined #endif #ifdef __USE_LARGEFILE64 typedef __ino64_t ino64_t; #endif -#ifndef dev_t +#ifndef __dev_t_defined typedef __dev_t dev_t; -# define dev_t dev_t +# define __dev_t_defined #endif -#ifndef gid_t +#ifndef __gid_t_defined typedef __gid_t gid_t; -# define gid_t gid_t +# define __gid_t_defined #endif -#ifndef mode_t +#ifndef __mode_t_defined typedef __mode_t mode_t; -# define mode_t mode_t +# define __mode_t_defined #endif -#ifndef nlink_t +#ifndef __nlink_t_defined typedef __nlink_t nlink_t; -# define nlink_t nlink_t +# define __nlink_t_defined #endif -#ifndef uid_t +#ifndef __uid_t_defined typedef __uid_t uid_t; -# define uid_t uid_t +# define __uid_t_defined #endif -#ifndef off_t +#ifndef __off_t_defined # ifndef __USE_FILE_OFFSET64 typedef __off_t off_t; # else typedef __off64_t off_t; # endif -# define off_t off_t +# define __off_t_defined #endif -#if defined __USE_LARGEFILE64 && !defined off64_t +#if defined __USE_LARGEFILE64 && !defined __off64_t_defined typedef __off64_t off64_t; -# define off64_t off64_t +# define __off64_t_defined #endif -#ifndef pid_t +#ifndef __pid_t_defined typedef __pid_t pid_t; -# define pid_t pid_t +# define __pid_t_defined #endif #if defined __USE_SVID || defined __USE_XOPEN typedef __id_t id_t; #endif -#ifndef ssize_t +#ifndef __ssize_t_defined typedef __ssize_t ssize_t; -# define ssize_t ssize_t +# define __ssize_t_defined #endif #ifdef __USE_BSD diff --git a/posix/sys/wait.h b/posix/sys/wait.h index 2ba604de6b..aba0493b0b 100644 --- a/posix/sys/wait.h +++ b/posix/sys/wait.h @@ -29,9 +29,9 @@ __BEGIN_DECLS #include -#if defined __USE_XOPEN && !defined pid_t +#if defined __USE_XOPEN && !defined __pid_t_defined typedef __pid_t pid_t; -# define pid_t pid_t +# define __pid_t_defined #endif /* This will define the `W*' macros for the flag diff --git a/posix/unistd.h b/posix/unistd.h index 9e8cf6ba02..0a00010ae6 100644 --- a/posix/unistd.h +++ b/posix/unistd.h @@ -189,9 +189,9 @@ __BEGIN_DECLS #include -#ifndef ssize_t +#ifndef __ssize_t_defined typedef __ssize_t ssize_t; -# define ssize_t ssize_t +# define __ssize_t_defined #endif #define __need_size_t @@ -201,39 +201,39 @@ typedef __ssize_t ssize_t; #ifdef __USE_XOPEN /* The Single Unix specification says that some more types are available here. */ -# ifndef gid_t +# ifndef __gid_t_defined typedef __gid_t gid_t; -# define gid_t gid_t +# define __gid_t_defined # endif -# ifndef uid_t +# ifndef __uid_t_defined typedef __uid_t uid_t; -# define uid_t uid_t +# define __uid_t_defined # endif -# ifndef off_t +# ifndef __off_t_defined # ifndef __USE_FILE_OFFSET64 typedef __off_t off_t; # else typedef __off64_t off_t; # endif -# define off_t off_t +# define __off_t_defined # endif -# if defined __USE_LARGEFILE64 && !defined off64_t +# if defined __USE_LARGEFILE64 && !defined __off64_t_defined typedef __off64_t off64_t; -# define off64_t off64_t +# define __off64_t_defined # endif -# ifndef pid_t +# ifndef __pid_t_defined typedef __pid_t pid_t; -# define pid_t pid_t +# define __pid_t_defined # endif #endif /* X/Open */ #ifdef __USE_UNIX98 -# ifndef intptr_t +# ifndef __intptr_t_defined typedef __intptr_t intptr_t; -# define intptr_t intptr_t +# define __intptr_t_defined # endif #endif /* Unix98 */ diff --git a/pwd/pwd.h b/pwd/pwd.h index e03144fee6..50d62a1708 100644 --- a/pwd/pwd.h +++ b/pwd/pwd.h @@ -35,14 +35,14 @@ __BEGIN_DECLS #ifdef __USE_XOPEN /* The Single Unix specification says that some more types are available here. */ -# ifndef gid_t +# ifndef __gid_t_defined typedef __gid_t gid_t; -# define gid_t gid_t +# define __gid_t_defined # endif -# ifndef uid_t +# ifndef __uid_t_defined typedef __uid_t uid_t; -# define uid_t uid_t +# define __uid_t_defined # endif #endif diff --git a/signal/signal.h b/signal/signal.h index 6b8c345b87..02d7a79c65 100644 --- a/signal/signal.h +++ b/signal/signal.h @@ -37,7 +37,7 @@ __BEGIN_DECLS #ifndef __sig_atomic_t_defined # if defined __need_sig_atomic_t || defined _SIGNAL_H # undef __need_sig_atomic_t -# define __sig_atomic_t_defined 1 +# define __sig_atomic_t_defined typedef __sig_atomic_t sig_atomic_t; # endif #endif @@ -45,7 +45,7 @@ typedef __sig_atomic_t sig_atomic_t; #ifndef __sigset_t_defined # if defined __need_sigset_t || (defined _SIGNAL_H && defined __USE_POSIX) # undef __need_sigset_t -# define __sigset_t_defined 1 +# define __sigset_t_defined typedef __sigset_t sigset_t; # endif #endif @@ -55,9 +55,9 @@ typedef __sigset_t sigset_t; #include #include -#if defined __USE_XOPEN && !defined pid_t +#if defined __USE_XOPEN && !defined __pid_t_defined typedef __pid_t pid_t; -# define pid_t pid_t +# define __pid_t_defined #endif /* Unix98 */ diff --git a/sysdeps/generic/stdint.h b/sysdeps/generic/stdint.h index ed34451391..a0d1c64901 100644 --- a/sysdeps/generic/stdint.h +++ b/sysdeps/generic/stdint.h @@ -114,15 +114,15 @@ typedef unsigned long long int uint_fast64_t; /* Types for `void *' pointers. */ #if __WORDSIZE == 64 -# ifndef intptr_t +# ifndef __intptr_t_defined typedef long int intptr_t; -# define intptr_t intptr_t +# define __intptr_t_defined # endif typedef unsigned long int uintptr_t; #else -# ifndef intptr_t +# ifndef __intptr_t_defined typedef int intptr_t; -# define intptr_t intptr_t +# define __intptr_t_defined # endif typedef unsigned int uintptr_t; #endif diff --git a/sysdeps/gnu/utmpx.h b/sysdeps/gnu/utmpx.h index 916a2c5936..a7b58daf7f 100644 --- a/sysdeps/gnu/utmpx.h +++ b/sysdeps/gnu/utmpx.h @@ -23,9 +23,9 @@ #include /* Required according to Unix98. */ -#ifndef pid_t +#ifndef __pid_t_defined typedef __pid_t pid_t; -# define pid_t pid_t +# define __pid_t_defined #endif /* Get system dependent values and data structures. */ diff --git a/termios/termios.h b/termios/termios.h index 0306d8fb8d..809cb2c208 100644 --- a/termios/termios.h +++ b/termios/termios.h @@ -27,9 +27,9 @@ #ifdef __USE_UNIX98 /* We need `pid_t'. */ # include -# ifndef pid_t +# ifndef __pid_t_defined typedef __pid_t pid_t; -# define pid_t pid_t +# define __pid_t_defined # endif #endif diff --git a/wcsmbs/wchar.h b/wcsmbs/wchar.h index d9ff631fcb..be27dbc622 100644 --- a/wcsmbs/wchar.h +++ b/wcsmbs/wchar.h @@ -325,7 +325,7 @@ extern float wcstof __P ((__const wchar_t *__restrict __nptr, wchar_t **__restrict __endptr)); extern __long_double_t wcstold __P ((__const wchar_t *__restrict __nptr, wchar_t **__restrict __endptr)); -#endif /* GNU */ +#endif /* C9x */ /* Convert initial portion of wide string NPTR to `long int'