Clang Project

clang_source_code/test/Analysis/malloc-custom.c
1// RUN: %clang_analyze_cc1 -analyzer-checker=core,unix.Malloc -Wno-incompatible-library-redeclaration -verify %s
2
3// Various tests to make the analyzer is robust against custom
4// redeclarations of memory routines.
5//
6// You wouldn't expect to see much of this in normal code, but, for example,
7// CMake tests can generate these.
8
9// expected-no-diagnostics
10
11char alloca();
12char malloc();
13char realloc();
14char kmalloc();
15char valloc();
16char calloc();
17
18char free();
19char kfree();
20
21void testCustomArgumentlessAllocation() {
22  alloca(); // no-crash
23  malloc(); // no-crash
24  realloc(); // no-crash
25  kmalloc(); // no-crash
26  valloc(); // no-crash
27  calloc(); // no-crash
28
29  free(); // no-crash
30  kfree(); // no-crash
31}
32
33