// RUN: %clang_cc1 -triple x86_64-apple-darwin10 -analyze -analyzer-check-objc-mem -analyzer-store=basic -fblocks -verify %s// RUN: %clang_cc1 -triple x86_64-apple-darwin10 -analyze -analyzer-check-objc-mem -analyzer-store=region -fblocks -verify %s#if __has_feature(attribute_ns_returns_retained)#define NS_RETURNS_RETAINED __attribute__((ns_returns_retained))#endif#if __has_feature(attribute_cf_returns_retained)#define CF_RETURNS_RETAINED __attribute__((cf_returns_retained))#endif#if __has_feature(attribute_ns_returns_not_retained)#define NS_RETURNS_NOT_RETAINED __attribute__((ns_returns_not_retained))#endif#if __has_feature(attribute_cf_returns_not_retained)#define CF_RETURNS_NOT_RETAINED __attribute__((cf_returns_not_retained))#endif//===----------------------------------------------------------------------===//// The following code is reduced using delta-debugging from Mac OS X headers://// #include <Cocoa/Cocoa.h>// #include <CoreFoundation/CoreFoundation.h>// #include <DiskArbitration/DiskArbitration.h>// #include <QuartzCore/QuartzCore.h>// #include <Quartz/Quartz.h>// #include <IOKit/IOKitLib.h>//// It includes the basic definitions for the test cases below.//===----------------------------------------------------------------------===//typedefunsignedint__darwin_natural_t;typedefunsignedlonguintptr_t;typedefunsignedintuint32_t;typedefunsignedlonglonguint64_t;typedefunsignedintUInt32;typedefsignedlongCFIndex;typedefstruct{CFIndexlocation;CFIndexlength;}CFRange;static__inline____attribute__((always_inline))CFRangeCFRangeMake(CFIndexloc,CFIndexlen){CFRangerange;range.location=loc;range.length=len;returnrange;}typedefconstvoid*CFTypeRef;typedefconststruct__CFString*CFStringRef;typedefconststruct__CFAllocator*CFAllocatorRef;externconstCFAllocatorRefkCFAllocatorDefault;externCFTypeRefCFRetain(CFTypeRefcf);externvoidCFRelease(CFTypeRefcf);typedefstruct{}CFArrayCallBacks;externconstCFArrayCallBackskCFTypeArrayCallBacks;typedefconststruct__CFArray*CFArrayRef;typedefstruct__CFArray*CFMutableArrayRef;externCFMutableArrayRefCFArrayCreateMutable(CFAllocatorRefallocator,CFIndexcapacity,constCFArrayCallBacks*callBacks);externconstvoid*CFArrayGetValueAtIndex(CFArrayReftheArray,CFIndexidx);externvoidCFArrayAppendValue(CFMutableArrayReftheArray,const