mirror of
https://github.com/apple/swift.git
synced 2026-06-27 12:25:55 +02:00
b7ff0d49ef
ClangImporter::lookupTypeDecl allows a Clang type declaration to be imported by Clang name instead of by Swift name. Now that we're using Clang names in mangled names, that's exactly what we need to reconstruct an AST type from a mangled name. Also: - Handle @compatibility_alias in ClangImporter::lookupTypeDecl - Print errors when type reconstruction fails in swift-ide-test - Add an extra test for RemoteAST
29 lines
748 B
C
29 lines
748 B
C
@import Foundation;
|
|
|
|
NSString * const MyErrorDomain;
|
|
typedef NS_ENUM(int, MyError) {
|
|
MyErrorGood,
|
|
MyErrorBad,
|
|
} __attribute__((ns_error_domain(MyErrorDomain)));
|
|
|
|
NSString * const MyRenamedErrorDomain;
|
|
typedef NS_ENUM(int, MyRenamedError) {
|
|
MyRenamedErrorGood,
|
|
MyRenamedErrorBad,
|
|
} __attribute__((ns_error_domain(MyRenamedErrorDomain))) __attribute__((swift_name("RenamedError")));
|
|
|
|
|
|
struct Wrapper {
|
|
int unrelatedValue;
|
|
};
|
|
|
|
// Not actually an error enum, since those can't be import-as-member'd right
|
|
// now, but it can still hang with us.
|
|
typedef NS_ENUM(int, MyMemberEnum) {
|
|
MyMemberEnumA,
|
|
MyMemberEnumB,
|
|
} __attribute__((swift_name("Wrapper.MemberEnum")));
|
|
|
|
|
|
typedef int WrapperByAttribute __attribute__((swift_wrapper(struct)));
|