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