// RUN: %clang_analyze_cc1 %s -analyzer-checker=core,osx.cocoa.RetainCount -fblocks -verify // This test is checking behavior when a single checker runs only with the core // checkers, testing that the traversal order in the CFG does not affect the // reporting of an error. #import "Inputs/system-header-simulator-objc.h" void testDoubleRelease(BOOL z) { id x = [[NSObject alloc] init]; if (z) { [x release]; } else { ; } [x release]; // expected-warning {{Reference-counted object is used after it is released}} } void testDoubleRelease2(BOOL z) { id x = [[NSObject alloc] init]; if (z) { ; } else { [x release]; } [x release]; // expected-warning {{Reference-counted object is used after it is released}} }