@@ -15,6 +15,7 @@
/fsync
/ftruncate
/getid
+/getc_unget
/link
/math
/mem
@@ -27,6 +28,8 @@
/sprintf
/stdlib/strtol
/stdlib/a64l
+/stdio/fwrite
+/stdio/all
/string/strncmp
/string/strcspn
/string/strchr
@@ -12,6 +12,8 @@ EXPECT_BINS=\
fcntl \
fsync \
ftruncate \
+ getid \
+ getc_unget \
link \
math \
mem \
@@ -20,6 +22,8 @@ EXPECT_BINS=\
rmdir \
sleep \
sprintf \
+ stdio/fwrite \
+ stdio/all \
stdlib/strtol \
stdlib/a64l \
string/strncmp \
@@ -0,0 +1,12 @@
+#include <stdio.h>
+
+int main(int argc, char ** argv) {
+ ungetc('h', stdin);
+ char c;
+ if ((c = getchar()) == 'h') {
+ printf("Worked!\n");
+ return 0;
+ }
+ printf("failed :( %c\n", c);
+}
@@ -0,0 +1,11 @@
+#include <stdlib.h>
+ FILE *f = fopen("stdio/stdio.in", "r");
+ printf("%c\n", fgetc(f));
+ ungetc('H', f);
+ char *in = malloc(30);
+ printf("%s\n", fgets(in, 30, f));
+#include <errno.h>
+ FILE *f = fopen("stdio/fwrite.out", "w");
+ char *in = "Hello World!";
+ fputs(in, f); // calls fwrite, helpers::fwritex, internal::to_write and internal::stdio_write
+ fclose(f);
@@ -0,0 +1 @@
+Hello World!
@@ -0,0 +1,3 @@
+Line 2