// RUN: %empty-directory(%t) // // RUN: cp %s %t/main.swift // RUN: %target-build-swift %t/main.swift -I %S/Inputs/custom-modules/ -o %t/OS_objects -Xfrontend -disable-access-control // RUN: %target-codesign %t/OS_objects // RUN: %target-run %t/OS_objects 2>&1 | %FileCheck %s // REQUIRES: objc_interop // REQUIRES: executable_test // Note: Test the use of the Clang objc_runtime_visible attribute via // known OS objects on Darwin. import ObjectiveC import DispatchObjects // CHECK: Get current queue print("Get current queue") let obj = dispatch_get_current_queue() // CHECK-NEXT: Object is a dispatch queue if let q = obj as? OS_dispatch_queue { print("Object is a dispatch queue") } // CHECK-NEXT: Object is an OS object if let q = obj as? OS_object { print("Object is an OS object") } // CHECK-NEXT: Object is an NSObject if let q = obj as? NSObject { print("Object is an NSObject") } // CHECK-NEXT: Object is not a dispatch source if let q = obj as? OS_dispatch_source { print("Object is a dispatch source!?!?") } else { print("Object is not a dispatch source") } // CHECK-NEXT: DONE print("DONE");