| #include <stdio.h> | 
 | #include <stdlib.h> | 
 | #include <libc-internal.h> | 
 |  | 
 | int | 
 | main(int arc, char *argv[]) | 
 | { | 
 |   int res; | 
 |   unsigned int val; | 
 |  | 
 |   FILE *fp = fopen ("/dev/null", "r"); | 
 |  | 
 |   val = 0; | 
 |   res = fscanf(fp, "%n", &val); | 
 |  | 
 |   printf("Result of fscanf %%n = %d\n", res); | 
 |   printf("Scanned format = %d\n", val); | 
 |  | 
 |   /* We're testing exactly the case the warning is for.  */ | 
 |   DIAG_PUSH_NEEDS_COMMENT; | 
 |   DIAG_IGNORE_NEEDS_COMMENT (4.9, "-Wformat-zero-length"); | 
 |  | 
 |   res = fscanf(fp, ""); | 
 |  | 
 |   DIAG_POP_NEEDS_COMMENT; | 
 |  | 
 |   printf("Result of fscanf \"\" = %d\n", res); | 
 |   if (res != 0) | 
 |     abort (); | 
 |  | 
 |   res = fscanf(fp, "BLURB"); | 
 |   printf("Result of fscanf \"BLURB\" = %d\n", res); | 
 |   if (res >= 0) | 
 |     abort (); | 
 |  | 
 |   fclose (fp); | 
 |  | 
 |   return 0; | 
 |   return 0; | 
 | } |