diff options
author | Zack Weinberg <zackw@panix.com> | 2018-02-21 14:38:24 -0500 |
---|---|---|
committer | Zack Weinberg <zackw@panix.com> | 2018-02-21 14:39:54 -0500 |
commit | 30bfee2630b960050d1d50cafaab43fc171abc03 (patch) | |
tree | 0e07b4ca9b2e087edec24afe3bfa07b42f7cfdb2 /libio/libioP.h | |
parent | df6c012b99499d95ed7fee53553a9f4d4473ccae (diff) | |
download | glibc-30bfee2630b960050d1d50cafaab43fc171abc03.tar.gz |
Remove miscellaneous debris from libio.
This patch eliminates a number of #if 0 and #ifdef TODO blocks, macros
that are never used, macros that provide portability to substrates that
lack basic things like EINVAL and off_t, and other such debris.
I preserved IO_DEBUG and CHECK_FILE, even though as far as I can tell
IO_DEBUG is never defined and therefore CHECK_FILE never does
anything, because it seems like we might actually want to turn it _on_.
Installed stripped libraries and executables are unchanged, except,
again, that the line number of an assertion changes (this time it's
somewhere in fileops.c).
* libio/libio.h (_IO_pos_BAD, _IO_pos_0, _IO_pos_adjust):
Define here, unconditionally.
* libio/iolibio.h (_IO_pos_BAD): Don't define here.
* libio/libioP.h: Remove #if 0 blocks.
(_IO_pos_BAD, _IO_pos_0, _IO_pos_adjust): Don't define here.
(_IO_va_start, COERCE_FILE, MAYBE_SET_EINVAL): Don't define.
(CHECK_FILE): Don't use MAYBE_SET_EINVAL or COERCE_FILE. Fix style.
* libio/clearerr.c, libio/fputc.c, libio/getchar.c:
Assume weak_alias is always defined.
* libio/fileops.c, libio/genops.c, libio/oldfileops.c
* libio/oldpclose.c, libio/pclose.c, libio/wfileops.c:
Remove #if 0 and #ifdef TODO blocks.
Assume text_set_element is always defined.
* libio/iofdopen.c, libio/iogetdelim.c, libio/oldiofdopen.c
Use __set_errno (EINVAL) instead of MAYBE_SET_EINVAL.
* libio/tst-mmap-eofsync.c: Make #if 1 block unconditional.
Diffstat (limited to 'libio/libioP.h')
-rw-r--r-- | libio/libioP.h | 49 |
1 files changed, 9 insertions, 40 deletions
diff --git a/libio/libioP.h b/libio/libioP.h index ee23296ddb..8afe7032e3 100644 --- a/libio/libioP.h +++ b/libio/libioP.h @@ -309,10 +309,6 @@ struct _IO_jump_t JUMP_FIELD(_IO_stat_t, __stat); JUMP_FIELD(_IO_showmanyc_t, __showmanyc); JUMP_FIELD(_IO_imbue_t, __imbue); -#if 0 - get_column; - set_column; -#endif }; /* We always allocate an extra word following an _IO_FILE. @@ -710,19 +706,6 @@ extern off64_t _IO_seekpos_unlocked (FILE *, off64_t, int) extern int _IO_vscanf (const char *, va_list) __THROW; -/* _IO_pos_BAD is an off64_t value indicating error, unknown, or EOF. */ -#ifndef _IO_pos_BAD -# define _IO_pos_BAD ((off64_t) -1) -#endif -/* _IO_pos_adjust adjust an off64_t by some number of bytes. */ -#ifndef _IO_pos_adjust -# define _IO_pos_adjust(pos, delta) ((pos) += (delta)) -#endif -/* _IO_pos_0 is an off64_t value indicating beginning of file. */ -#ifndef _IO_pos_0 -# define _IO_pos_0 ((off64_t) 0) -#endif - #ifdef _IO_MTSAFE_IO /* check following! */ # ifdef _IO_USE_OLD_IO_FILE @@ -752,33 +735,19 @@ extern int _IO_vscanf (const char *, va_list) __THROW; # endif #endif -#define _IO_va_start(args, last) va_start(args, last) - extern struct _IO_fake_stdiobuf _IO_stdin_buf, _IO_stdout_buf, _IO_stderr_buf; -#if 1 -# define COERCE_FILE(FILE) /* Nothing */ -#else -/* This is part of the kludge for binary compatibility with old stdio. */ -# define COERCE_FILE(FILE) \ - (((FILE)->_flags & _IO_MAGIC_MASK) == _OLD_MAGIC_MASK \ - && (FILE) = *(FILE**)&((int*)fp)[1]) -#endif - -#ifdef EINVAL -# define MAYBE_SET_EINVAL __set_errno (EINVAL) -#else -# define MAYBE_SET_EINVAL /* nothing */ -#endif - #ifdef IO_DEBUG -# define CHECK_FILE(FILE, RET) \ - if ((FILE) == NULL) { MAYBE_SET_EINVAL; return RET; } \ - else { COERCE_FILE(FILE); \ - if (((FILE)->_flags & _IO_MAGIC_MASK) != _IO_MAGIC) \ - { MAYBE_SET_EINVAL; return RET; }} +# define CHECK_FILE(FILE, RET) do { \ + if ((FILE) == NULL || \ + ((FILE)->_flags & _IO_MAGIC_MASK) != _IO_MAGIC) \ + { \ + __set_errno (EINVAL); \ + return RET; \ + } \ + } while (0) #else -# define CHECK_FILE(FILE, RET) COERCE_FILE (FILE) +# define CHECK_FILE(FILE, RET) do { } while (0) #endif static inline void |