mirror of git://sourceware.org/git/glibc.git
				
				
				
			
		
			
				
	
	
		
			49 lines
		
	
	
		
			779 B
		
	
	
	
		
			C
		
	
	
	
			
		
		
	
	
			49 lines
		
	
	
		
			779 B
		
	
	
	
		
			C
		
	
	
	
| #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"
 |