diff options
Diffstat (limited to 'stdio/bug1.c')
-rw-r--r-- | stdio/bug1.c | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/stdio/bug1.c b/stdio/bug1.c new file mode 100644 index 0000000000..755bc4231b --- /dev/null +++ b/stdio/bug1.c @@ -0,0 +1,28 @@ +#include <ansidecl.h> +#include <stdio.h> +#include <string.h> + +int +DEFUN_VOID(main) +{ + char *bp; + size_t size; + FILE *stream; + int lose = 0; + + stream = open_memstream (&bp, &size); + fprintf (stream, "hello"); + fflush (stream); + printf ("buf = %s, size = %d\n", bp, size); + lose |= size != 5; + lose |= strncmp (bp, "hello", size); + fprintf (stream, ", world"); + fclose (stream); + printf ("buf = %s, size = %d\n", bp, size); + lose |= size != 12; + lose |= strncmp (bp, "hello, world", 12); + + puts (lose ? "Test FAILED!" : "Test succeeded."); + + return lose; +} |