| // RUN: %clang_analyze_cc1 -analyzer-checker=core,unix.Malloc -Wno-incompatible-library-redeclaration -verify %s |
| |
| // Various tests to make the analyzer is robust against custom |
| // redeclarations of memory routines. |
| // |
| // You wouldn't expect to see much of this in normal code, but, for example, |
| // CMake tests can generate these. |
| |
| // expected-no-diagnostics |
| |
| char alloca(void); |
| char malloc(void); |
| char realloc(void); |
| char kmalloc(void); |
| char valloc(void); |
| char calloc(void); |
| |
| char free(void); |
| char kfree(void); |
| |
| void testCustomArgumentlessAllocation(void) { |
| alloca(); // no-crash |
| malloc(); // no-crash |
| realloc(); // no-crash |
| kmalloc(); // no-crash |
| valloc(); // no-crash |
| calloc(); // no-crash |
| |
| free(); // no-crash |
| kfree(); // no-crash |
| } |
| |