CGColorSpace.c revision 17a38e2636a8b1ce473fc6504c4b16cb09db29f4
1// RUN: %clang_cc1 -analyze -analyzer-checker=core,osx.cocoa.RetainCount -analyzer-store=region -analyzer-constraints=basic -verify %s
2// RUN: %clang_cc1 -analyze -analyzer-checker=core,osx.cocoa.RetainCount -analyzer-store=region -analyzer-constraints=range -verify %s
3
4typedef struct CGColorSpace *CGColorSpaceRef;
5extern CGColorSpaceRef CGColorSpaceCreateDeviceRGB(void);
6extern CGColorSpaceRef CGColorSpaceRetain(CGColorSpaceRef space);
7extern void CGColorSpaceRelease(CGColorSpaceRef space);
8
9void f() {
10  CGColorSpaceRef X = CGColorSpaceCreateDeviceRGB(); // expected-warning{{leak}}
11  CGColorSpaceRetain(X);
12}
13
14void fb() {
15  CGColorSpaceRef X = CGColorSpaceCreateDeviceRGB();
16  CGColorSpaceRetain(X);
17  CGColorSpaceRelease(X);
18  CGColorSpaceRelease(X);  // no-warning
19}
20