brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.0 KiB · 68d12df Raw
66 lines · plain
1// RUN: %clang_analyze_cc1 -analyzer-checker=core,osx.cocoa.RetainCount,alpha.core -verify %s2// expected-no-diagnostics3//4// This test case mainly checks that the retain/release checker doesn't crash5// on this file.6//7typedef int int32_t;8typedef signed char BOOL;9typedef long NSInteger;10typedef unsigned long NSUInteger;11typedef struct _NSZone NSZone;12@class NSInvocation, NSMethodSignature, NSCoder, NSString, NSEnumerator;13@protocol NSObject  - (BOOL)isEqual:(id)object;14@end  @protocol NSCopying  - (id)copyWithZone:(NSZone *)zone;15@end  @protocol NSCoding  - (void)encodeWithCoder:(NSCoder *)aCoder;16@end    @interface NSObject <NSObject> {}17@end      extern id NSAllocateObject(Class aClass, NSUInteger extraBytes, NSZone *zone);18@interface NSResponder : NSObject <NSCoding> {}19@end    @protocol NSAnimatablePropertyContainer      - (id)animator;20@end  extern NSString *NSAnimationTriggerOrderIn ;21@interface NSView : NSResponder  <NSAnimatablePropertyContainer>  {22}23@end    enum {24NSNullCellType = 0,     NSTextCellType = 1,     NSImageCellType = 2 };25typedef struct __CFlags {26  unsigned int botnet:3;27}28  _CFlags;29@interface Bar : NSObject <NSCopying, NSCoding> {30  _CFlags _cFlags;31@private       id _support;32}33@end  extern NSString *NSControlTintDidChangeNotification;34typedef NSInteger NSBotnet;35@interface NSControl : NSView {36}37@end @class NSAttributedString, NSFont, NSImage, NSSound;38typedef int32_t Baz;39@interface Bar(BarInternal) - (void)_setIsWhite:(BOOL)isWhite;40@end41@interface Bar (BarBotnetCompatibility)42- (NSBotnet)_initialBotnetZorg;43@end44typedef struct _NSRunArrayItem {45  unsigned int botnetIsSet:1;46} BarAuxFlags;47@interface BarAuxiliary : NSObject {48@public49  NSControl *controlView;50  BarAuxFlags auxCFlags;51}52@end53@implementation Bar54static Baz Qux = 0;55- (id)copyWithZone:(NSZone *)zone { return 0; }56- (void)encodeWithCoder:(NSCoder *)coder {}57@end58@implementation Bar (BarBotnet)59- (NSBotnet)botnet {60  if (!(*(BarAuxiliary **)&self->_support)->auxCFlags.botnetIsSet) {61    _cFlags.botnet = [self _initialBotnetZorg];62  }63  while (1) {}64}65@end66