// RUN: %clang_cc1 -fsyntax-only -verify %s
typedef signed char BOOL;
typedef unsigned int NSUInteger;
typedef struct _NSZone NSZone;
@class NSInvocation, NSMethodSignature, NSCoder, NSString, NSEnumerator;
@protocol NSObject - isEqual:object; @end
@protocol NSCopying - copyWithZone:zone; @end // expected-note {{method 'copyWithZone:' declared here}}
@protocol NSMutableCopying - mutableCopyWithZone:zone; @end
@protocol NSCoding - encodeWithCoder:aCoder; @end
typedef struct NSFastEnumerationState;
@protocol NSFastEnumeration - countByEnumeratingWithState:state objects:stackbuf count:len; @end
@interface NSDictionary : NSObject <NSCopying, NSMutableCopying, NSCoding, NSFastEnumeration> - count; @end
@interface NSMutableDictionary : NSDictionary - removeObjectForKey:aKey; @end // expected-note {{receiver is instance of class declared here}}
extern NSString * const NSTaskDidTerminateNotification;