Run DCE after a LoopFlatten test to reduce spurious output [nfc]
[llvm-project.git] / clang / test / Analysis / Inputs / system-header-simulator-for-simple-stream.h
blobb65b7a6b0e7b020ba8993cd3af4ae2c768690f6c
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
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);
17 // The following is a fake system header function
18 typedef struct __FileStruct {
19 FILE * p;
20 } FileStruct;
21 void fakeSystemHeaderCall(FileStruct *);