// RUN: %target-swift-frontend -assume-parsing-unqualified-ownership-sil -parse-stdlib -primary-file %s -emit-ir | %FileCheck %s // REQUIRES: executable_test // REQUIRES: objc_interop import Swift import Foundation import CoreGraphics // CHECK: [[INT32:@[0-9]+]] = {{.*}} c"i\00" // CHECK: [[OBJECT:@[0-9]+]] = {{.*}} c"@\00" @objc enum ObjCEnum: Int32 { case X } @objc class ObjCClass: NSObject {} class NonObjCClass {} @_silgen_name("use") func use(_: Builtin.RawPointer) func getObjCTypeEncoding(_: T) { // CHECK: call swiftcc void @use({{.* i8]\*}} [[INT32]], use(Builtin.getObjCTypeEncoding(Int32.self)) // CHECK: call swiftcc void @use({{.* i8]\*}} [[INT32]] use(Builtin.getObjCTypeEncoding(ObjCEnum.self)) // CHECK: call swiftcc void @use({{.* i8]\*}} [[CGRECT:@[0-9]+]], use(Builtin.getObjCTypeEncoding(CGRect.self)) // CHECK: call swiftcc void @use({{.* i8]\*}} [[NSRANGE:@[0-9]+]], use(Builtin.getObjCTypeEncoding(NSRange.self)) // CHECK: call swiftcc void @use({{.* i8]\*}} [[OBJECT]] use(Builtin.getObjCTypeEncoding(AnyObject.self)) // CHECK: call swiftcc void @use({{.* i8]\*}} [[OBJECT]] use(Builtin.getObjCTypeEncoding(NSObject.self)) // CHECK: call swiftcc void @use({{.* i8]\*}} [[OBJECT]] use(Builtin.getObjCTypeEncoding(ObjCClass.self)) // CHECK: call swiftcc void @use({{.* i8]\*}} [[OBJECT]] use(Builtin.getObjCTypeEncoding(NonObjCClass.self)) }