// RUN: %target-run-simple-swift | %FileCheck %s // REQUIRES: executable_test // REQUIRES: objc_interop import Foundation import ObjectiveC func DoSwizzle(_ c: AnyClass) -> AnyClass { let name = String(utf8String: class_getName(c))! let subclass: AnyClass = objc_allocateClassPair(c, "\(name)Subclass", 0)! objc_registerClassPair(subclass); let subclassSubclass: AnyClass = objc_allocateClassPair(subclass, "\(name)SubclassSubclass", 0)! objc_registerClassPair(subclassSubclass); return subclassSubclass } class MySwiftClassToBeSwizzled: NSObject { } _ = DoSwizzle(NSArray.self) print("Swizzled NSArray") // CHECK: Swizzled NSArray _ = DoSwizzle(MySwiftClassToBeSwizzled.self) print("Swizzled MySwiftClassToBeSwizzled") // CHECK: Swizzled MySwiftClassToBeSwizzled