}
for (;;) {
char c;
+ int ret;
- c = fgetc(stream);
- if (c == EOF) {
+ ret = fgetc(stream);
+ if (ret == EOF) {
if (ferror(stream)) {
/* ferror() is set, errno set by fgetc(). */
return -1;
found_eof = 1;
break;
}
+ c = (char) ret;
if (linelen == SSIZE_MAX) {
errno = EOVERFLOW;
return -1;