| #include <assert.h> | 
 | #include <errno.h> | 
 | #include <stdio.h> | 
 |  | 
 | #ifndef CHAR | 
 | # define CHAR char | 
 | # define L(str) str | 
 | # define FPUTS fputs | 
 | # define FSCANF fscanf | 
 | #endif | 
 |  | 
 |  | 
 | static int | 
 | do_test (void) | 
 | { | 
 |   FILE *fp = tmpfile (); | 
 |   if (fp == NULL) | 
 |     { | 
 |       puts ("cannot open file"); | 
 |       return 1; | 
 |     } | 
 |  | 
 |   FPUTS (L("7-11"), fp); | 
 |   rewind (fp); | 
 |  | 
 |   printf("setting errno to EINTR\n"); | 
 |   errno = EINTR; | 
 |  | 
 |   printf("checking sscanf\n"); | 
 |  | 
 |   int i, j, n; | 
 |  | 
 |   i = j = n = 0; | 
 |   FSCANF (fp, 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" |