[AST] Factor out Expr::getNameLoc

There are a bunch of AST nodes that can have
associated DeclNameLocs, make sure we cover them
all. I don't think this makes a difference for
`unwrapPropertyWrapperParameterTypes` since the
extra cases should be invalid, but for cursor info
it ensures we handle UnresolvedMemberExprs.
This commit is contained in:
Hamish Knight
2024-12-05 15:55:19 +00:00
parent dd97862305
commit c4efa0d5f0
5 changed files with 40 additions and 28 deletions

View File

@@ -0,0 +1,14 @@
struct S {
static func foo(_ x: Int) -> S {}
static func foo(_ x: String) -> S {}
}
// https://github.com/swiftlang/swift/issues/77981 - Make sure we can resolve
// solver-based cursor info for UnresolvedMemberExprs.
func bar() {
// RUN: %sourcekitd-test -req=cursor -pos=%(line + 1):15 %s -- %s | %FileCheck %s
let _: S = .foo()
}
// CHECK-DAG: source.lang.swift.ref.function.method.static (2:15-2:28)
// CHECK-DAG: source.lang.swift.ref.function.method.static (3:15-3:31)