| // RUN: %target-typecheck-verify-swift -sdk %S/Inputs -I %S/Inputs/custom-modules -I %S/../Inputs/custom-modules |
| // RUN: %target-swift-ide-test -print-ast-typechecked -source-filename %s -sdk %S/Inputs -I %S/Inputs/custom-modules -I %S/../Inputs/custom-modules -function-definitions=true -prefer-type-repr=false -print-implicit-attrs=true -explode-pattern-binding-decls=true -disable-objc-attr-requires-foundation-module | %FileCheck %s |
| |
| // REQUIRES: objc_interop |
| |
| import AttrObjc_FooClangModule |
| import ObjCRuntimeVisible |
| |
| @objc |
| class infer_instanceVar1 { |
| // CHECK-LABEL: @objc class infer_instanceVar1 { |
| |
| var var_ClangEnum: FooEnum1 |
| var var_ClangStruct: FooStruct1 |
| // CHECK-LABEL: @objc var var_ClangEnum: FooEnum1 |
| // CHECK-LABEL: @objc var var_ClangStruct: FooStruct1 |
| |
| init(fe: FooEnum1, fs: FooStruct1) { |
| var_ClangEnum = fe |
| var_ClangStruct = fs |
| } |
| } |
| |
| class ObjC_Class1 : NSObject, Hashable { |
| var hashValue: Int { return 0 } |
| } |
| |
| func ==(lhs: ObjC_Class1, rhs: ObjC_Class1) -> Bool { |
| return true |
| } |
| |
| @objc class ObjC_Class2 : Hashable { |
| var hashValue: Int { return 0 } |
| } |
| |
| func ==(lhs: ObjC_Class2, rhs: ObjC_Class2) -> Bool { |
| return true |
| } |
| |
| extension A { |
| // CHECK: {{^}} func foo() |
| func foo() { } |
| } |