diff options
author | Fariborz Jahanian <fjahanian@apple.com> | 2012-08-08 16:41:04 +0000 |
---|---|---|
committer | Fariborz Jahanian <fjahanian@apple.com> | 2012-08-08 16:41:04 +0000 |
commit | a5063a620847de422e64c330ed5d07718583bf9c (patch) | |
tree | 7c436fd3793a41deb680c8702dc8cf2798db89a1 /clang/test | |
parent | 4577cd30363b10b8a2e25b80e8203d1702442b84 (diff) | |
download | bcm5719-llvm-a5063a620847de422e64c330ed5d07718583bf9c.tar.gz bcm5719-llvm-a5063a620847de422e64c330ed5d07718583bf9c.zip |
objc: Include all types when issuing warning under
-Wdirect-ivar-access.
llvm-svn: 161500
Diffstat (limited to 'clang/test')
-rw-r--r-- | clang/test/SemaObjC/warn-direct-ivar-access.m | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/clang/test/SemaObjC/warn-direct-ivar-access.m b/clang/test/SemaObjC/warn-direct-ivar-access.m index d380ebf5aec..d2295f47655 100644 --- a/clang/test/SemaObjC/warn-direct-ivar-access.m +++ b/clang/test/SemaObjC/warn-direct-ivar-access.m @@ -5,15 +5,18 @@ __attribute__((objc_root_class)) @interface MyObject { @public id _myMaster; id _isTickledPink; + int _myIntProp; } @property(retain) id myMaster; @property(assign) id isTickledPink; // expected-note {{property declared here}} +@property int myIntProp; @end @implementation MyObject @synthesize myMaster = _myMaster; @synthesize isTickledPink = _isTickledPink; // expected-error {{existing ivar '_isTickledPink' for property 'isTickledPink'}} +@synthesize myIntProp = _myIntProp; - (void) doSomething { _myMaster = _isTickledPink; // expected-warning {{instance variable '_myMaster' is being directly accessed}} \ @@ -33,6 +36,8 @@ MyObject * foo () p.isTickledPink = p.myMaster; // ok p->_isTickledPink = (*p)._myMaster; // expected-warning {{instance variable '_isTickledPink' is being directly accessed}} \ // expected-warning {{instance variable '_myMaster' is being directly accessed}} + if (p->_myIntProp) // expected-warning {{instance variable '_myIntProp' is being directly accessed}} + p->_myIntProp = 0; // expected-warning {{instance variable '_myIntProp' is being directly accessed}} return p->_isTickledPink; // expected-warning {{instance variable '_isTickledPink' is being directly accessed}} } |