X-Git-Url: https://ruderich.org/simon/gitweb/?a=blobdiff_plain;ds=inline;f=tests%2Fexample.c;h=fc5c01ecd73c4bf07a60305c4c4622b65892998a;hb=f3c734eb7d1759d67e64614a6285865e6edac0bf;hp=545f3cb195a3765cca9ed7d8049dfff60149bc40;hpb=06f483dbeece72fa46fe43700b6e01279c92c916;p=coloredstderr%2Fcoloredstderr.git
diff --git a/tests/example.c b/tests/example.c
index 545f3cb..fc5c01e 100644
--- a/tests/example.c
+++ b/tests/example.c
@@ -17,20 +17,22 @@
* along with this program. If not, see .
*/
+#include
+
#include
#include
#include
#include
+#include "../src/compiler.h"
-int main(int argc, char **argv) {
- (void)argv;
+int main(int argc, char **argv unused) {
fprintf(stderr, "write to stderr: %d\n", argc);
printf("write to stdout\n");
fflush(stdout);
- errno = 0;
+ errno = ENOMEM;
perror("error!");
write(STDERR_FILENO, "write to stderr 2", 17);
@@ -50,5 +52,17 @@ int main(int argc, char **argv) {
write(42, "stderr ...\n", 11);
write(471, "more on stdout\n", 15);
+ /* Glibc uses __overflow() for this ... */
+ putc_unlocked('x', stderr);
+ putc_unlocked('\n', stdout);
+
+ /* Test invalid stuff. */
+ close(-42);
+ close(-4711);
+ /* Can't test this, results in a segfault with the "normal" fclose(). */
+ /*fclose(NULL);*/
+ dup(-12);
+ dup2(12, -42);
+
return EXIT_SUCCESS;
}