1 // REQUIRES: static-analyzer
2 // RUN: clang-tidy %s -checks='-*,clang-analyzer-unix.Malloc' -config='{CheckOptions: { "clang-analyzer-unix.DynamicMemoryModeling:Optimistic": true}}' -- | FileCheck %s
3 typedef __typeof(sizeof(int)) size_t;
6 void __attribute((ownership_returns(malloc
))) *my_malloc(size_t);
7 void __attribute((ownership_takes(malloc
, 1))) my_free(void *);
12 // CHECK: warning: Potential leak of memory pointed to by 'p' [clang-analyzer-unix.Malloc]
16 void *p
= my_malloc(12);
19 // CHECK: warning: Attempt to free released memory [clang-analyzer-unix.Malloc]