diff options
Diffstat (limited to 'posix/bug-getopt2.c')
-rw-r--r-- | posix/bug-getopt2.c | 72 |
1 files changed, 0 insertions, 72 deletions
diff --git a/posix/bug-getopt2.c b/posix/bug-getopt2.c deleted file mode 100644 index 93c3035ccd..0000000000 --- a/posix/bug-getopt2.c +++ /dev/null @@ -1,72 +0,0 @@ -/* BZ 11039 */ -#include <unistd.h> -#include <stdio.h> - -static int -one_test (const char *fmt, int argc, char *argv[], int expected[argc - 1]) -{ - int res = 0; - for (int i = 0; i < argc - 1; ++i) - { - rewind (stderr); - if (ftruncate (fileno (stderr), 0) != 0) - { - puts ("cannot truncate file"); - return 1; - } - - int c = getopt (argc, argv, fmt); - if (c != expected[i]) - { - printf ("format '%s' test %d failed: expected '%c', got '%c'\n", - fmt, i, expected[i], c); - res = 1; - } - if (ftell (stderr) == 0) - { - printf ("format '%s' test %d failed: not printed to stderr\n", - fmt, i); - res = 1; - } - } - - return res; -} - - -static int -do_test (void) -{ - char *fname = tmpnam (NULL); - if (fname == NULL) - { - puts ("cannot generate name for temporary file"); - return 1; - } - - if (freopen (fname, "w+", stderr) == NULL) - { - puts ("cannot redirect stderr"); - return 1; - } - - remove (fname); - - optind = 0; - int ret = one_test ("+a", 2, - (char *[2]) { (char *) "bug-getopt2", (char *) "-+" }, - (int [1]) { '?' }); - - optind = 1; - ret |= one_test ("+a", 2, - (char *[2]) { (char *) "bug-getopt2", (char *) "-+" }, - (int [1]) { '?' }); - - if (ret == 0) - puts ("all OK"); - - return ret; -} - -#define TEST_FUNCTION do_test () -#include "../test-skeleton.c" |