1 // RUN: %clang_analyze_cc1 -analyzer-checker=core,unix.Malloc -Wno-incompatible-library-redeclaration -verify %s 2 3 // Various tests to make the 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 11 char alloca(); 12 char malloc(); 13 char realloc(); 14 char kmalloc(); 15 char valloc(); 16 char calloc(); 17 18 char free(); 19 char kfree(); 20 21 void 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