From b211467f77892f418da091278e47b9fe1baabe4b Mon Sep 17 00:00:00 2001 From: Sami Kerola Date: Sat, 10 Mar 2018 21:20:24 +0000 Subject: closestream: remove dummy function __fpending() Exclude __fpending() from build when function is not available. This is more obvious than adding a dummy function and expecting compiler to eliminate it as dead code. Signed-off-by: Sami Kerola --- include/closestream.h | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) (limited to 'include') diff --git a/include/closestream.h b/include/closestream.h index 2dfe11360..b3b257c94 100644 --- a/include/closestream.h +++ b/include/closestream.h @@ -14,22 +14,20 @@ # define CLOSE_EXIT_CODE EXIT_FAILURE #endif -#ifndef HAVE___FPENDING -static inline int -__fpending(FILE *stream __attribute__((__unused__))) -{ - return 0; -} -#endif - static inline int close_stream(FILE * stream) { +#ifdef HAVE___FPENDING const int some_pending = (__fpending(stream) != 0); +#endif const int prev_fail = (ferror(stream) != 0); const int fclose_fail = (fclose(stream) != 0); - if (prev_fail || (fclose_fail && (some_pending || errno != EBADF))) { + if (prev_fail || (fclose_fail && ( +#ifdef HAVE___FPENDING + some_pending || +#endif + errno != EBADF))) { if (!fclose_fail && !(errno == EPIPE)) errno = 0; return EOF; -- cgit v1.2.3-55-g7522