rdar-6600344-nil-receiver-undefined-struct-ret.m revision d7d5f0223bd30dfd618762349c6209dd1d5ea3e6
1// RUN: clang-cc -analyze -checker-cfref -analyzer-constraints=basic -analyzer-store=basic %s -verify 2 3typedef struct Foo { int x; } Bar; 4 5@interface MyClass {} 6- (Bar)foo; 7@end 8@implementation MyClass 9- (Bar)foo { 10 struct Foo f = { 0 }; 11 return f; 12} 13@end 14 15void createFoo() { 16 MyClass *obj = 0; 17 Bar f = [obj foo]; // expected-warning{{The receiver in the message expression is 'nil' and results in the returned value (of type 'Bar') to be garbage or otherwise undefined.}} 18} 19 20