// RUN: %empty-directory(%t) // RUN: %target-build-swift %s -import-objc-header %S/Inputs/rdar29694978.h -emit-module -o %t/Library.swiftmodule // RUN: %target-swift-ide-test -print-module -module-to-print=Library -source-filename=x -I %S/Inputs/ -I %t | %FileCheck %s // REQUIRES: objc_interop // This would be wonderful to fold into a larger test, but I'm worried that // trying to do so would perturb the original conditions that cause it to // crash: deserializing a typealias (1) to an imported Objective-C type (2) // that has a protocol (3) that refines another protocol (4) which causes us // to load all extensions, including one defined in this file (5) in terms of // the original typealias (1). // // It's probably best to just leave this test about that. import Foundation // CHECK-DAG: typealias MyNonGenericType = NonGenericType typealias MyNonGenericType = NonGenericType // CHECK-DAG: extension NonGenericType extension MyNonGenericType {} // CHECK-DAG: typealias MyGenericType = GenericType typealias MyGenericType = GenericType // CHECK-DAG: extension GenericType where Element : AnyObject extension MyGenericType {} // CHECK-DAG: extension GenericType where Element == NSObject extension MyGenericType where Element == NSObject {}