ObjCProperties.m revision 565e465c6d0093f1bf8414b2cabdc842022385a9
1// RUN: %clang_cc1 -analyze -analyzer-experimental-internal-checks -analyzer-check-objc-mem -analyzer-store=basic -analyzer-constraints=basic %s -verify
2// RUN: %clang_cc1 -analyze -analyzer-experimental-internal-checks -analyzer-check-objc-mem -analyzer-store=basic -analyzer-constraints=range %s -verify
3// RUN: %clang_cc1 -analyze -analyzer-experimental-internal-checks -analyzer-check-objc-mem -analyzer-store=region -analyzer-constraints=basic %s -verify
4// RUN: %clang_cc1 -analyze -analyzer-experimental-internal-checks -analyzer-check-objc-mem -analyzer-store=region -analyzer-constraints=range %s -verify
5
6// The point of this test cases is to exercise properties in the static
7// analyzer
8
9@interface MyClass {
10@private
11    id _X;
12}
13- (id)initWithY:(id)Y;
14@property(copy, readwrite) id X;
15@end
16
17@implementation MyClass
18@synthesize X = _X;
19- (id)initWithY:(id)Y {
20  self.X = Y;
21  return self;
22}
23@end
24