// RUN: %target-run-simple-swift | %FileCheck %s // REQUIRES: executable_test // REQUIRES: objc_interop // Requires swift-version 4. // UNSUPPORTED: swift_test_mode_optimize_none_with_implicit_dynamic import Foundation // rdar://problem/36477954 func AnyToNSObject(_ a: Any) { if a is NSObject { // ok } else { fatalError("argument is not bridgable to NSObject") } } let opt: String? = "hello" AnyToNSObject(opt as Any) let doubleOpt: String?? = "hello" AnyToNSObject(doubleOpt as Any) let iuo: String! = "goodbye" AnyToNSObject(iuo as Any) let doubleIUO: String!! = "goodbye" AnyToNSObject(doubleIUO as Any) // rdar://problem/36559165 let dict = NSMutableDictionary() let kSomeKey: String! = "kSomeKey" dict.setValue(true as Any, forKey: kSomeKey) // CHECK: value: 1 print("value:", dict[kSomeKey] ?? "nil") // CHECK: ok print("ok")