|
6 | 6 | // RUN: mkdir %t
|
7 | 7 |
|
8 | 8 | // FIXME: BEGIN -enable-source-import hackaround
|
9 |
| -// RUN: %target-swift-frontend(mock-sdk: -sdk %S/../Inputs/clang-importer-sdk -I %t) -emit-module -o %t %S/../Inputs/clang-importer-sdk/swift-modules/ObjectiveC.swift |
10 |
| -// RUN: %target-swift-frontend(mock-sdk: -sdk %S/../Inputs/clang-importer-sdk -I %t) -emit-module -o %t %S/../Inputs/clang-importer-sdk/swift-modules/CoreGraphics.swift |
11 |
| -// RUN: %target-swift-frontend(mock-sdk: -sdk %S/../Inputs/clang-importer-sdk -I %t) -emit-module -o %t %S/../Inputs/clang-importer-sdk/swift-modules/Foundation.swift |
12 |
| -// RUN: %target-swift-frontend(mock-sdk: -sdk %S/../Inputs/clang-importer-sdk -I %t) -emit-module -o %t %S/../Inputs/clang-importer-sdk/swift-modules/AppKit.swift |
| 9 | +// RUN: %target-swift-frontend(mock-sdk: -sdk %S/../Inputs/clang-importer-sdk -I %t) -emit-module -o %t -enable-omit-needless-words %S/../Inputs/clang-importer-sdk/swift-modules/ObjectiveC.swift |
| 10 | +// RUN: %target-swift-frontend(mock-sdk: -sdk %S/../Inputs/clang-importer-sdk -I %t) -emit-module -o %t -enable-omit-needless-words %S/../Inputs/clang-importer-sdk/swift-modules/CoreGraphics.swift |
| 11 | +// RUN: %target-swift-frontend(mock-sdk: -sdk %S/../Inputs/clang-importer-sdk -I %t) -emit-module -o %t -enable-omit-needless-words %S/../Inputs/clang-importer-sdk/swift-modules/Foundation.swift |
| 12 | +// RUN: %target-swift-frontend(mock-sdk: -sdk %S/../Inputs/clang-importer-sdk -I %t) -emit-module -o %t -enable-omit-needless-words %S/../Inputs/clang-importer-sdk/swift-modules/AppKit.swift |
13 | 13 | // FIXME: END -enable-source-import hackaround
|
14 | 14 |
|
15 | 15 |
|
16 |
| -// RUN: %target-swift-frontend(mock-sdk: -sdk %S/../Inputs/clang-importer-sdk -I %t) -emit-module -o %t %s -disable-objc-attr-requires-foundation-module |
17 |
| -// RUN: %target-swift-frontend(mock-sdk: -sdk %S/../Inputs/clang-importer-sdk -I %t) -parse-as-library %t/classes.swiftmodule -parse -emit-objc-header-path %t/classes.h -import-objc-header %S/../Inputs/empty.h -disable-objc-attr-requires-foundation-module |
| 16 | +// RUN: %target-swift-frontend(mock-sdk: -sdk %S/../Inputs/clang-importer-sdk -I %t) -emit-module -o %t %s -enable-omit-needless-words -disable-objc-attr-requires-foundation-module |
| 17 | +// RUN: %target-swift-frontend(mock-sdk: -sdk %S/../Inputs/clang-importer-sdk -I %t) -parse-as-library -enable-omit-needless-words %t/classes.swiftmodule -parse -emit-objc-header-path %t/classes.h -import-objc-header %S/../Inputs/empty.h -disable-objc-attr-requires-foundation-module |
18 | 18 | // RUN: FileCheck %s < %t/classes.h
|
19 | 19 | // RUN: FileCheck --check-prefix=NEGATIVE %s < %t/classes.h
|
20 | 20 | // RUN: %check-in-clang %t/classes.h
|
@@ -91,8 +91,11 @@ class ClassWithCustomNameSub : ClassWithCustomName {}
|
91 | 91 | // CHECK-NEXT: @end
|
92 | 92 | @objc class ClassWithNSObjectProtocol : NSObjectProtocol {
|
93 | 93 | var description: String { return "me" }
|
94 |
| - func conformsToProtocol(_: Protocol) -> Bool { return false } |
95 |
| - func isKindOfClass(aClass: AnyClass) -> Bool { return false } |
| 94 | + @objc(conformsToProtocol:) |
| 95 | + func conforms(to _: Protocol) -> Bool { return false } |
| 96 | + |
| 97 | + @objc(isKindOfClass:) |
| 98 | + func isKind(of aClass: AnyClass) -> Bool { return false } |
96 | 99 | }
|
97 | 100 |
|
98 | 101 | // CHECK-LABEL: @interface Initializers
|
@@ -236,7 +239,7 @@ typealias AliasForNSRect = NSRect
|
236 | 239 | func emptyArray() -> NSArray { return NSArray() }
|
237 | 240 | func maybeArray() -> NSArray? { return nil }
|
238 | 241 |
|
239 |
| - func someEnum() -> NSRuncingMode { return .Mince } |
| 242 | + func someEnum() -> NSRuncingMode { return .mince } |
240 | 243 |
|
241 | 244 | func zone() -> NSZone { return nil }
|
242 | 245 |
|
@@ -394,6 +397,7 @@ public class NonObjCClass { }
|
394 | 397 | // CHECK-NEXT: + (double)staticDouble;
|
395 | 398 | // CHECK-NEXT: @property (nonatomic, strong) Properties * _Nullable wobble;
|
396 | 399 | // CHECK-NEXT: @property (nonatomic, getter=isEnabled, setter=setIsEnabled:) BOOL enabled;
|
| 400 | +// CHECK-NEXT: @property (nonatomic, getter=isAnimated) BOOL animated; |
397 | 401 | // CHECK-NEXT: @property (nonatomic, getter=register, setter=setRegister:) BOOL register_;
|
398 | 402 | // CHECK-NEXT: @property (nonatomic, readonly, strong, getter=this) Properties * _Nonnull this_;
|
399 | 403 | // CHECK-NEXT: init
|
@@ -425,15 +429,15 @@ public class NonObjCClass { }
|
425 | 429 |
|
426 | 430 | weak var weakProto: MyProtocol?
|
427 | 431 | weak var weakCF: CFTypeRef?
|
428 |
| - weak var weakCFString: CFStringRef? |
| 432 | + weak var weakCFString: CFString? |
429 | 433 |
|
430 | 434 | typealias CFTypeRefAlias = CFTypeRef
|
431 | 435 |
|
432 | 436 | var strongCF: CFTypeRef?
|
433 | 437 | var strongCFAlias: CFTypeRefAlias?
|
434 | 438 |
|
435 | 439 | var anyCF: CFAliasForType?
|
436 |
| - var anyCF2: CFAliasForTypeRef? |
| 440 | + var anyCF2: CFAliasForType? |
437 | 441 |
|
438 | 442 | @IBOutlet weak var outlet: AnyObject!
|
439 | 443 | @IBOutlet var typedOutlet: Properties!
|
@@ -468,6 +472,8 @@ public class NonObjCClass { }
|
468 | 472 | @objc(setIsEnabled:) set { }
|
469 | 473 | }
|
470 | 474 |
|
| 475 | + var isAnimated: Bool = true |
| 476 | + |
471 | 477 | var register: Bool = false
|
472 | 478 | var this: Properties { return self }
|
473 | 479 | }
|
|
0 commit comments