// RUN: %target-typecheck-verify-swift enum Key: Int { case aKey case anotherKey // expected-note {{did you mean 'anotherKey'?}} } class sr6175 { var dict: [Key: String] = [:] func what() -> Void { dict[.notAKey] = "something" // expected-error {{type 'Key' has no member 'notAKey'}} } subscript(i: Int) -> Int { return i*i } subscript(j: Double) -> Double { get { return j*j } set {} } } let s = sr6175() let one: Int = 1 // Should choose the settable subscript to find a problem with, not the get-only subscript s[one] = 2.5 // expected-error {{cannot convert value of type 'Int' to expected argument type 'Double'}}