Home | History | Annotate | Download | only in Inputs
      1 // Like the compiler, the static analyzer treats some functions differently if
      2 // they come from a system header -- for example, it is assumed that system
      3 // functions do not arbitrarily free() their parameters, and that some bugs
      4 // found in system headers cannot be fixed by the user and should be
      5 // suppressed.
      6 #pragma clang system_header
      7 
      8 typedef struct __sFILE {
      9   unsigned char *_p;
     10 } FILE;
     11 FILE *fopen(const char * restrict, const char * restrict) __asm("_" "fopen" );
     12 int fputc(int, FILE *);
     13 int fputs(const char * restrict, FILE * restrict) __asm("_" "fputs" );
     14 int fclose(FILE *);
     15 void exit(int);
     16 
     17 // The following is a fake system header function
     18 typedef struct __FileStruct {
     19   FILE * p;
     20 } FileStruct;
     21 void fakeSystemHeaderCall(FileStruct *);
     22