CGColorSpace.c revision bb6c8fdae70aa1dd4df499bdf711fbfcb2e67548
1// RUN: clang -analyze -checker-cfref -analyzer-store-basic -verify %s &&
2// RUN: clang -analyze -checker-cfref -analyzer-store-region -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();
11  CGColorSpaceRetain(X);  // expected-warning{{leak}}
12}
13
14void fb() {
15  CGColorSpaceRef X = CGColorSpaceCreateDeviceRGB();
16  CGColorSpaceRetain(X);
17  CGColorSpaceRelease(X);
18  CGColorSpaceRelease(X);  // no-warning
19}
20