1 
2 // Currently the check is performed for apple targets only.
test(const char * path)3 void test(const char *path) {
4   int fd = open(path, O_CREAT);
5     // warn: call to 'open' requires a third argument when the
6     // 'O_CREAT' flag is set
7 }
8 
9 void f();
10 
test()11 void test() {
12   pthread_once_t pred = {0x30B1BCBA, {0}};
13   pthread_once(&pred, f);
14     // warn: call to 'pthread_once' uses the local variable
15 }
16 
test()17 void test() {
18   void *p = malloc(0); // warn: allocation size of 0 bytes
19 }
20 
test()21 void test() {
22   void *p = calloc(0, 42); // warn: allocation size of 0 bytes
23 }
24 
test()25 void test() {
26   void *p = malloc(1);
27   p = realloc(p, 0); // warn: allocation size of 0 bytes
28 }
29 
test()30 void test() {
31   void *p = alloca(0); // warn: allocation size of 0 bytes
32 }
33 
test()34 void test() {
35   void *p = valloc(0); // warn: allocation size of 0 bytes
36 }
37 
38