diff options
Diffstat (limited to 'test/Analysis/Inputs/system-header-simulator.h')
-rw-r--r-- | test/Analysis/Inputs/system-header-simulator.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/test/Analysis/Inputs/system-header-simulator.h b/test/Analysis/Inputs/system-header-simulator.h index e28b890..04688c78 100644 --- a/test/Analysis/Inputs/system-header-simulator.h +++ b/test/Analysis/Inputs/system-header-simulator.h @@ -1,3 +1,8 @@ +// Like the compiler, the static analyzer treats some functions differently if +// they come from a system header -- for example, it is assumed that system +// functions do not arbitrarily free() their parameters, and that some bugs +// found in system headers cannot be fixed by the user and should be +// suppressed. #pragma clang system_header typedef struct _FILE FILE; @@ -62,3 +67,11 @@ typedef void (*xpc_finalizer_t)(void *value); void xpc_connection_set_context(xpc_connection_t connection, void *context); void xpc_connection_set_finalizer_f(xpc_connection_t connection, xpc_finalizer_t finalizer); void xpc_connection_resume(xpc_connection_t connection); + +//The following is a fake system header function +void fakeSystemHeaderCallInt(int *); + +typedef struct __SomeStruct { + char * p; +} SomeStruct; +void fakeSystemHeaderCall(SomeStruct *); |