14 lines · c
1// RUN: %clang_analyze_cc1 -analyzer-checker core,unix.Malloc -analyzer-output=plist -o %t.plist -verify %s2// RUN: FileCheck --input-file=%t.plist %s3 4void free(void *);5void (*fnptr)(int);6void foo(void) {7 free((void *)fnptr);8 // expected-warning@-1{{Argument to 'free()' is a function pointer}}9 // expected-warning@-2{{attempt to call free on non-heap object '(void *)fnptr'}}10}11 12// Make sure the bug category is correct.13// CHECK: <key>category</key><string>Memory error</string>14