1 // RUN: %clang_cc1 -analyze -analyzer-experimental-internal-checks -analyzer-check-objc-mem -analyzer-store=basic -analyzer-constraints=basic -verify %s
2 // RUN: %clang_cc1 -analyze -analyzer-experimental-internal-checks -analyzer-check-objc-mem -analyzer-store=basic -analyzer-constraints=range -verify %s
3 // RUN: %clang_cc1 -analyze -analyzer-experimental-internal-checks -analyzer-check-objc-mem -analyzer-store=region -analyzer-constraints=basic -verify %s
4 // RUN: %clang_cc1 -analyze -analyzer-experimental-internal-checks -analyzer-check-objc-mem -analyzer-store=region -analyzer-constraints=range -verify %s
6 typedef struct CGColorSpace *CGColorSpaceRef;
7 extern CGColorSpaceRef CGColorSpaceCreateDeviceRGB(void);
8 extern CGColorSpaceRef CGColorSpaceRetain(CGColorSpaceRef space);
9 extern void CGColorSpaceRelease(CGColorSpaceRef space);
12 CGColorSpaceRef X = CGColorSpaceCreateDeviceRGB(); // expected-warning{{leak}}
13 CGColorSpaceRetain(X);
17 CGColorSpaceRef X = CGColorSpaceCreateDeviceRGB();
18 CGColorSpaceRetain(X);
19 CGColorSpaceRelease(X);
20 CGColorSpaceRelease(X); // no-warning