bin/108118: [libc] files should not cache their EOF status

Jilles Tjoelker jilles at
Sat Apr 4 08:00:08 PDT 2009

The following reply was made to PR bin/108118; it has been noted by GNATS.

From: Jilles Tjoelker <jilles at>
To: bug-followup at, twschulz at,
	freebsd-standards at
Subject: Re: bin/108118: [libc] files should not cache their EOF status
Date: Sat, 4 Apr 2009 16:56:29 +0200

 The way I read POSIX, FreeBSD's current behaviour seems correct. Calling
 fread(3) is equivalent to calling fgetc(3) an appropriate number of
 times, and fgetc(3) shall fail if the end-of-file indicator is set for
 the stream, even if data is available on the underlying file.
 Apparently, POSIX aligns with the C standard here; System V tradition is
 not to check the end-of-file indicator here. Both
 src/lib/libc/stdio/refill.c (__srefill()) and Solaris fgetc(3) manpage
 agree about this.
 Jilles Tjoelker

More information about the freebsd-bugs mailing list