How to suppress objective C analyser warning with categories <p>I'm using the static code analyser in objective C and I found that using categories to spread a big file in multiple files causes the following problem:</p> <pre><code>@interface TestClass : UIViewController @property (nonatomic, assign) UITableView* myTableView; @end @implementation TestClass @end @interface TestClass (someCategory) @end @implementation TestClass (someCategory) - (void) someMethod { // ... CGRect tableViewRect = CGRectMake( sectionRect.origin.x, sectionRect.origin.y + sectionRect.size.height + 1.0, sectionRect.size.width, tableViewHeight); myTableView = [[UITableView alloc] initWithFrame:(CGRect) tableViewRect style:(UITableViewStyle) UITableViewStylePlain]; [self.view addSubView: (UIView*) myTableView]; [myTableView release]; } @end </code></pre> <p>Problem # 1: Compiling TestClass(someCategory) gives me an error "use of undeclared identifier 'theArray'". -> Adding the prefix "self.myTableView" seems to fix the problem.</p> <p>Problem # 2: Once I have added the "self." prefix before "myTableView", the code analyser complains "incorrect decrement of the reference count of an object that is not owned at this point by the caller" ->I have seen this before in my code: easy to fix by removing the "self." prefix in other, non categorized classes.</p> <p>So I have a catch 22 situation! - I can't have a class category without prefixing the properties that I use with "self." - The code analyser gives me warnings because it does not seem to understand that my category owns an object that it allocates and frees.</p> <p>Fixing either of these two problems would work for me (a) finding a way to avoid specifying the ".self" prefix when referencing an attribute from my category implementation (b) finding a way to make the code analyser happy with the fact that I own "self.xxx" where "xxx" is a property of the class that I am categorizing.</p>