2005-03-15 Jakub Jelinek <jakub@redhat.com>
[glibc/history.git] / stdio-common / tst-ferror.c
blob5f23002c7a79601044b10c54ff5ba8110351edb5
1 #include <stdio.h>
3 int
4 main (int argc, char *argv[])
6 char buf[100];
7 int result = 0;
9 if (ferror (stdin) != 0)
11 fputs ("error bit set for stdin at startup\n", stdout);
12 result = 1;
14 if (fgets (buf, sizeof buf, stdin) != buf)
16 fputs ("fgets with existing input has problem\n", stdout);
17 result = 1;
19 if (ferror (stdin) != 0)
21 fputs ("error bit set for stdin after setup\n", stdout);
22 result = 1;
24 if (fputc ('a', stdin) != EOF)
26 fputs ("fputc to stdin does not terminate with an error\n", stdout);
27 result = 1;
29 if (ferror (stdin) == 0)
31 fputs ("error bit not set for stdin after fputc\n", stdout);
32 result = 1;
34 clearerr (stdin);
35 if (ferror (stdin) != 0)
37 fputs ("error bit set for stdin after clearerr\n", stdout);
38 result = 1;
40 return result;