Files
swift-mirror/test/ClangImporter/MixedSource/Inputs/mixed-target/header.h
Jordan Rose fbf5a5162a [ClangImporter] Test for not being in a module correctly. (#9992)
For the Optional<Module *> returned by getClangSubmoduleForDecl, the
outside Optional specifies whether there's an answer at all. That
answer can still be null if the declaration comes from a bridging
header.  In this particular case, we're guaranteed to get an answer,
but that answer may be null.

rdar://problem/32463543
2017-05-31 09:24:51 -07:00

83 lines
1.8 KiB
Objective-C

// Don't change this to @import; it tickles a particular former crash.
#import <Foundation.h>
@import ExternIntX;
#import "Protocols.h"
#import "used-by-both-headers.h"
@class ForwardClass;
@protocol ForwardProto;
void doSomething(ForwardClass *arg);
void doSomethingProto(id <ForwardProto> arg);
@interface Base
- (NSObject *)safeOverride:(ForwardClass *)arg;
- (NSObject *)unsafeOverrideParam:(NSObject *)arg;
- (ForwardClass *)unsafeOverrideReturn:(ForwardClass *)arg;
@end
@protocol ForwardClassUser
- (void)consumeForwardClass:(ForwardClass *)arg;
@property ForwardClass *forward;
@end
@interface Base ()
- (NSObject *)safeOverrideProto:(id <ForwardProto>)arg;
- (NSObject *)unsafeOverrideProtoParam:(NSObject *)arg;
- (id <ForwardProto>)unsafeOverrideProtoReturn:(id <ForwardProto>)arg;
@end
@class PartialBaseClass;
@class PartialSubClass /* : NSObject */;
void doSomethingPartialBase(PartialBaseClass *arg);
void doSomethingPartialSub(PartialSubClass *arg);
@interface Base ()
- (NSObject *)safeOverridePartialSub:(PartialSubClass *)arg;
- (NSObject *)unsafeOverridePartialSubParam:(NSObject *)arg;
- (PartialSubClass *)unsafeOverridePartialSubReturn:(PartialSubClass *)arg;
@end
typedef NS_ENUM(short, AALevel) {
AAA = 1,
BBB = 2
};
@interface ConflictingName1
@end
@protocol ConflictingName1
@end
@protocol ConflictingName2
@end
@interface ConflictingName2
@end
@interface WrapperInterface
typedef int NameInInterface;
@end
@protocol WrapperProto
typedef int NameInProtocol;
@end
@interface WrapperInterface (Category)
typedef int NameInCategory;
@end
@protocol ForwardProtoFromOtherFile;
@interface ClassThatHasAProtocolTypedPropertyButMembersAreNeverLoaded
@property (weak) id <ForwardProtoFromOtherFile> weakProtoProp;
@end
@interface GenericObjCClass<Param : id <ForwardProto>> : Base
- (instancetype)init;
@end