| #include <assert.h> |
| #include <errno.h> |
| #include <stdio.h> |
| |
| #ifndef CHAR |
| # define CHAR char |
| # define L(str) str |
| # define SSCANF sscanf |
| #endif |
| |
| |
| static int |
| do_test (void) |
| { |
| printf("setting errno to EINTR\n"); |
| errno = EINTR; |
| |
| printf("checking sscanf\n"); |
| |
| CHAR str[] = L("7-11"); |
| int i, j, n; |
| |
| i = j = n = 0; |
| SSCANF (str, L(" %i - %i %n"), &i, &j, &n); |
| printf ("found %i-%i (length=%i)\n", i, j, n); |
| |
| int result = 0; |
| if (i != 7) |
| { |
| printf ("i is %d, expected 7\n", i); |
| result = 1; |
| } |
| if (j != 11) |
| { |
| printf ("j is %d, expected 11\n", j); |
| result = 1; |
| } |
| if (n != 4) |
| { |
| printf ("n is %d, expected 4\n", j); |
| result = 1; |
| } |
| |
| return result; |
| } |
| |
| #define TEST_FUNCTION do_test () |
| #include "../test-skeleton.c" |