| #include <stdio.h> |
| |
| int |
| main (int argc, char *argv[]) |
| { |
| char buf[100]; |
| int result = 0; |
| |
| if (ferror (stdin) != 0) |
| { |
| fputs ("error bit set for stdin at startup\n", stdout); |
| result = 1; |
| } |
| if (fgets (buf, sizeof buf, stdin) != buf) |
| { |
| fputs ("fgets with existing input has problem\n", stdout); |
| result = 1; |
| } |
| if (ferror (stdin) != 0) |
| { |
| fputs ("error bit set for stdin after setup\n", stdout); |
| result = 1; |
| } |
| if (fputc ('a', stdin) != EOF) |
| { |
| fputs ("fputc to stdin does not terminate with an error\n", stdout); |
| result = 1; |
| } |
| if (ferror (stdin) == 0) |
| { |
| fputs ("error bit not set for stdin after fputc\n", stdout); |
| result = 1; |
| } |
| clearerr (stdin); |
| if (ferror (stdin) != 0) |
| { |
| fputs ("error bit set for stdin after clearerr\n", stdout); |
| result = 1; |
| } |
| return result; |
| } |