mirror of
https://github.com/apple/swift.git
synced 2025-12-21 12:14:44 +01:00
Not every declaration that's syntactically in an Objective-C container is a member of that container. Double-check the decl context before adding it. This is technically a breaking change in non-asserts builds, because the struct really could be found via member lookup. But that should be considered a bug, and I /suspect/ no one is relying on it. rdar://problem/32451417
36 lines
574 B
Objective-C
36 lines
574 B
Objective-C
@interface Base
|
|
@end
|
|
|
|
struct AlreadyDeclaredStruct {
|
|
int value;
|
|
};
|
|
|
|
#if defined(CLASS)
|
|
@interface Wrapper : Base
|
|
#elif defined(CATEGORY)
|
|
@interface Wrapper : Base
|
|
@end
|
|
@interface Wrapper (Category)
|
|
#elif defined(PROTOCOL)
|
|
@protocol Wrapper
|
|
#else
|
|
# error "Must pick a variant"
|
|
#endif
|
|
|
|
extern void nestedFunc(void);
|
|
|
|
@property struct ForwardDeclaredStruct forward;
|
|
@property struct AlreadyDeclaredStruct backward;
|
|
|
|
struct NestedDeclaredStruct {
|
|
int value;
|
|
};
|
|
typedef int NestedTypedef;
|
|
extern const int nestedGlobal;
|
|
|
|
@end
|
|
|
|
struct ForwardDeclaredStruct {
|
|
int value;
|
|
};
|