Skip to content

[SourceKit] Support building sourcekitd without building swift-syntax #70174

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions include/swift/Refactoring/Refactoring.h
Original file line number Diff line number Diff line change
Expand Up @@ -100,6 +100,7 @@ class RenameLocs {
/// - valueDecl: The declaration that should be renamed
RenameLocs localRenameLocs(SourceFile *sourceFile, const ValueDecl *valueDecl);

#if SWIFT_BUILD_SWIFT_SYNTAX
/// Given a list of `RenameLoc`s, get the corresponding `ResolveLoc`s.
///
/// These resolve locations contain more structured information, such as the
Expand All @@ -112,6 +113,7 @@ std::vector<ResolvedLoc> resolveRenameLocations(ArrayRef<RenameLoc> renameLocs,
StringRef newName,
SourceFile &sourceFile,
DiagnosticEngine &diags);
#endif

struct RangeConfig {
unsigned BufferID;
Expand Down
1 change: 1 addition & 0 deletions lib/IDE/Utils.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -808,6 +808,7 @@ class ClangFileRewriterHelper {
getBuffer());
RewriteBuf.Initialize(Input);
removeCommentLines(RewriteBuf, Input, "RUN");
removeCommentLines(RewriteBuf, Input, "REQUIRES");
removeCommentLines(RewriteBuf, Input, "CHECK");
}

Expand Down
13 changes: 7 additions & 6 deletions lib/Refactoring/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,8 +1,3 @@
if (NOT SWIFT_BUILD_SWIFT_SYNTAX)
# swiftRefactoring requires SwiftIDEUtilsBriding, which isn't built if SWIFT_BUILD_SWIFT_SYNTAX is `NO`.
return()
endif()

add_swift_host_library(swiftRefactoring STATIC
AddEquatableConformance.cpp
AddExplicitCodableImplementation.cpp
Expand Down Expand Up @@ -55,5 +50,11 @@ target_link_libraries(swiftRefactoring PRIVATE
swiftParse
swiftSema)

set_swift_llvm_is_available(swiftRefactoring)
if(SWIFT_BUILD_SWIFT_SYNTAX)
target_compile_definitions(swiftRefactoring
PRIVATE
SWIFT_BUILD_SWIFT_SYNTAX
)
endif()

set_swift_llvm_is_available(swiftRefactoring)
6 changes: 6 additions & 0 deletions lib/Refactoring/SyntacticRename.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@
using namespace swift;
using namespace swift::ide;

#if SWIFT_BUILD_SWIFT_SYNTAX
std::vector<ResolvedLoc>
swift::ide::resolveRenameLocations(ArrayRef<RenameLoc> RenameLocs,
StringRef NewName, SourceFile &SF,
Expand Down Expand Up @@ -105,13 +106,17 @@ swift::ide::resolveRenameLocations(ArrayRef<RenameLoc> RenameLocs,
}
return resolvedLocsInRequestedOrder;
}
#endif

CancellableResult<std::vector<SyntacticRenameRangeDetails>>
swift::ide::findSyntacticRenameRanges(SourceFile *SF,
ArrayRef<RenameLoc> RenameLocs,
StringRef NewName) {
using ResultType =
CancellableResult<std::vector<SyntacticRenameRangeDetails>>;
#if !SWIFT_BUILD_SWIFT_SYNTAX
return ResultType::failure("find-syntactic-rename-ranges is not supported because sourcekitd was built without swift-syntax");
#else
assert(SF && "null source file");

SourceManager &SM = SF->getASTContext().SourceMgr;
Expand Down Expand Up @@ -146,4 +151,5 @@ swift::ide::findSyntacticRenameRanges(SourceFile *SF,
return ResultType::failure(ErrBuffer);

return ResultType::success(Result);
#endif
}
1 change: 1 addition & 0 deletions test/SourceKit/CursorInfo/cursor_callargs.swift
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ class C1 {
var c1 = C1(passInt: 0, andThis: 0)
c1.meth(0, passFloat: 0)

// REQUIRES: swift_swift_parser
// RUN: %sourcekitd-test -req=cursor -pos=6:11 %s -- %s | %FileCheck -check-prefix=CHECK-CLASS %s
// CHECK-CLASS: source.lang.swift.ref.class (2:7-2:9)
// CHECK-CLASS: s:15cursor_callargs2C1C
Expand Down
1 change: 1 addition & 0 deletions test/SourceKit/Misc/stats.swift
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
func foo() {}

// REQUIRES: swift_swift_parser
// RUN: %sourcekitd-test -req=syntax-map %s == -req=stats | %FileCheck %s -check-prefix=SYNTAX_1

// SYNTAX_1: {{.*}} source.statistic.instruction-count
Expand Down
2 changes: 2 additions & 0 deletions test/SourceKit/Refactoring/find-rename-ranges.swift
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,8 @@ struct Foo {
static var test: Int = 10
}

// REQUIRES: swift_swift_parser

// RUN: %empty-directory(%t.result)

// Ensure that a syntactic rename request does not require the stdlib
Expand Down
1 change: 1 addition & 0 deletions test/SourceKit/Refactoring/ordering.swift
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ func test(c: C) {
/*C_foo3_call_arg2*/b: 2)
}

// REQUIRES: swift_swift_parser
// RUN: %empty-directory(%t.result)
// RUN: %sourcekitd-test -req=find-rename-ranges -rename-spec %S/ordering/ordering.in.json %s >> %t.result/ordering.expected
// RUN: %diff -u %S/ordering/ordering.expected %t.result/ordering.expected
13 changes: 7 additions & 6 deletions test/SourceKit/Refactoring/rename-mismatch.swift
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
// REQUIRES: swift_swift_parser
// RUN: %empty-directory(%t)
// RUN: split-file --leading-lines %s %t

Expand All @@ -17,11 +18,11 @@ _ = Sss()
// RUN: %sourcekitd-test -req=find-rename-ranges -rename-spec %t/rename-spec.json %t/input.swift | %FileCheck %s

// CHECK: source.edit.kind.active:
// CHECK: 5:8-5:11 source.refactoring.range.kind.basename
// CHECK: 6:8-6:11 source.refactoring.range.kind.basename
// CHECK: source.edit.kind.unknown:
// CHECK: source.edit.kind.mismatch:
// CHECK: source.edit.kind.active:
// CHECK: 10:5-10:8 source.refactoring.range.kind.basename
// CHECK: 11:5-11:8 source.refactoring.range.kind.basename

//--- rename-spec.json

Expand All @@ -33,22 +34,22 @@ _ = Sss()
"key.is_non_protocol_type": 1,
"key.locations": [
{
"key.line": 5,
"key.line": 6,
"key.column": 8,
"key.nametype": source.syntacticrename.definition
},
{
"key.line": 8,
"key.line": 9,
"key.column": 5,
"key.nametype": source.syntacticrename.unknown
},
{
"key.line": 9,
"key.line": 10,
"key.column": 5,
"key.nametype": source.syntacticrename.unknown
},
{
"key.line": 10,
"key.line": 11,
"key.column": 5,
"key.nametype": source.syntacticrename.reference
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,6 @@
func test() {}
#sourceLocation()

// REQUIRES: swift_swift_parser
// RUN: %sourcekitd-test -req=find-local-rename-ranges -pos=2:6 %s -- %s | %FileCheck %s
// CHECK: 2:6-2:10 source.refactoring.range.kind.basename
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
// RUN: %sourcekitd-test -req=find-local-rename-ranges -pos=4:7 %s -- %s | %FileCheck %s
// REQUIRES: swift_swift_parser
// RUN: %sourcekitd-test -req=find-local-rename-ranges -pos=5:7 %s -- %s | %FileCheck %s

var Foo: Int {
var missingNewlineAtEndOfFile

// CHECK: source.edit.kind.active:
// CHECK: 4:6-4:31 source.refactoring.range.kind.basename
// CHECK: 5:6-5:31 source.refactoring.range.kind.basename
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ func foo() {
return 1
}

// REQUIRES: swift_swift_parser
// RUN: %empty-directory(%t.result)
// RUN: %sourcekitd-test -req=find-local-rename-ranges -pos=2:8 %s -- %s | %FileCheck %s --check-prefix CHECK-aa

Expand Down
1 change: 1 addition & 0 deletions test/SourceKit/RelatedIdents/implicit_vis.swift
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ class B {

//--- dummy.swift

// REQUIRES: swift_swift_parser
// RUN: %sourcekitd-test -req=related-idents -pos=3:10 %t/a.swift -- %t/a.swift %t/b.swift -o implicit_vis.o | %FileCheck -check-prefix=CHECK1 %s

// CHECK1: START RANGES
Expand Down
1 change: 1 addition & 0 deletions test/SourceKit/RelatedIdents/invalid_loc.swift
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
// REQUIRES: swift_swift_parser
// RUN: %sourcekitd-test -req=related-idents -pos=%(line + 1):1 %s -- %s | %FileCheck %s

// CHECK: START RANGES
Expand Down
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
// REQUIRES: swift_swift_parser
// RUN: %sourcekitd-test -req=related-idents -pos=%(line + 1):5 %s -- %s | %FileCheck %s
let asd = [0]
let index = asd.firstIndex(of: 0)!
print(asd[asd.firstIndex(of: 0)!...])


// CHECK: START RANGES
// CHECK: 2:5 - 3
// CHECK: 3:13 - 3
// CHECK: 4:7 - 3
// CHECK: 4:11 - 3
// CHECK: 3:5 - 3
// CHECK: 4:13 - 3
// CHECK: 5:7 - 3
// CHECK: 5:11 - 3
// CHECK: END RANGES

5 changes: 3 additions & 2 deletions test/SourceKit/RelatedIdents/pound_if.swift
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
// REQUIRES: swift_swift_parser
// RUN: %sourcekitd-test -req=related-idents -pos=%(line + 1):10 %s -- %s | %FileCheck %s
func foo(x: Int) {
#if true
Expand All @@ -8,6 +9,6 @@ func foo(x: Int) {
}

// CHECK: START RANGES
// CHECK-NEXT: 2:10 - 1
// CHECK-NEXT: 4:9 - 1
// CHECK-NEXT: 3:10 - 1
// CHECK-NEXT: 5:9 - 1
// CHECK-NEXT: END RANGES
2 changes: 2 additions & 0 deletions test/SourceKit/RelatedIdents/related_idents.swift
Original file line number Diff line number Diff line change
Expand Up @@ -105,6 +105,8 @@ func ifLet(test: Int?) {
}
}

// REQUIRES: swift_swift_parser

// RUN: %sourcekitd-test -req=related-idents -pos=6:17 %s -- -module-name related_idents %s | %FileCheck -check-prefix=CHECK1 %s
// CHECK1: START RANGES
// CHECK1-NEXT: 1:7 - 2
Expand Down
5 changes: 3 additions & 2 deletions test/SourceKit/RelatedIdents/system_symbol.swift
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
// REQUIRES: swift_swift_parser
// RUN: %sourcekitd-test -req=related-idents -pos=%(line + 1):13 %s -- %s | %FileCheck %s
func foo(x: String) {
let a: String = "abc"
}

// CHECK: START RANGES
// CHECK-NEXT: 2:13 - 6
// CHECK-NEXT: 3:10 - 6
// CHECK-NEXT: 3:13 - 6
// CHECK-NEXT: 4:10 - 6
// CHECK-NEXT: END RANGES
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ struct Foo {
}
Foo()/*test:ref*/[`x`: 10]

// REQUIRES: swift_swift_parser
// RUN: %empty-directory(%t.ranges)
// RUN: %refactor -find-rename-ranges -source-filename %s -pos="test" -is-function-like -old-name "subscript(x:)" >> %t.ranges/backticks-noncollapsible-separate-arglabel.swift.expected
// RUN: diff -u %S/Outputs/backticks-noncollapsible-separate-arglabel.swift.expected %t.ranges/backticks-noncollapsible-separate-arglabel.swift.expected
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ struct Foo {
}
Foo()/*test:ref*/[10]

// REQUIRES: swift_swift_parser
// RUN: %empty-directory(%t.ranges)
// RUN: %refactor -find-rename-ranges -source-filename %s -pos="test" -is-function-like -old-name "subscript(_:)" >> %t.ranges/backticks-noncollapsible.swift.expected
// RUN: diff -u %S/Outputs/backticks-noncollapsible.swift.expected %t.ranges/backticks-noncollapsible.swift.expected
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ func /*test:def*/`foo`(`x` `y`: Int) {}
/*test:call*/`foo`(`x`: 2)
_ = /*test:ref*/`foo`(`x`:)

// REQUIRES: swift_swift_parser
// RUN: %empty-directory(%t.ranges)
// RUN: %refactor -find-rename-ranges -source-filename %s -pos="test" -is-function-like -old-name "foo(x:)" >> %t.ranges/backticks-separate-arglabel.swift.expected
// RUN: diff -u %S/Outputs/backticks-separate-arglabel.swift.expected %t.ranges/backticks-separate-arglabel.swift.expected
1 change: 1 addition & 0 deletions test/refactoring/SyntacticRename/backticks.swift
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ func /*test:def*/`foo`(`x`: Int) {}
/*test:call*/`foo`(`x`: 2)
_ = /*test:ref*/`foo`(`x`:)

// REQUIRES: swift_swift_parser
// RUN: %empty-directory(%t.ranges)
// RUN: %refactor -find-rename-ranges -source-filename %s -pos="test" -is-function-like -old-name "foo(x:)" >> %t.ranges/backticks.swift.expected
// RUN: diff -u %S/Outputs/backticks.swift.expected %t.ranges/backticks.swift.expected
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ let /*test:def*/add3 = Adder(base: 3)
/*test:ref*/add3(x: 10, y: 11)
let blah = /*test:ref*/add3.callAsFunction(x:y:)

// REQUIRES: swift_swift_parser
// RUN: %empty-directory(%t.ranges)
// RUN: %refactor -find-rename-ranges -source-filename %s -pos="test" -old-name "add3" >> %t.ranges/call-as-function-base.swift.expected
// RUN: diff -u %S/Outputs/call-as-function-base.swift.expected %t.ranges/call-as-function-base.swift.expected
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ _ = add3 . /*test:call*/callAsFunction(10)
_ = add3 . /*test:ref*/callAsFunction(_:)
_ = add3 . /*test:ref*/callAsFunction

// REQUIRES: swift_swift_parser
// RUN: %empty-directory(%t.ranges)
// RUN: %refactor -find-rename-ranges -source-filename %s -pos="test" -is-function-like -old-name "callAsFunction(_:)" >> %t.ranges/call-as-function-paren-arg.swift.expected
// RUN: diff -u %S/Outputs/call-as-function-paren-arg.swift.expected %t.ranges/call-as-function-paren-arg.swift.expected
1 change: 1 addition & 0 deletions test/refactoring/SyntacticRename/call-as-function.swift
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ _ = add3 . /*test:ref*/callAsFunction(x:y:)
_ = add3 . /*test:ref*/callAsFunction
_ = (add3 . /*test:call*/callAsFunction())/*test:call*/(x: 10, y: 11)

// REQUIRES: swift_swift_parser
// RUN: %empty-directory(%t.ranges)
// RUN: %refactor -find-rename-ranges -source-filename %s -pos="test" -is-function-like -old-name "callAsFunction(x:y:)" >> %t.ranges/call-as-function.swift.expected
// RUN: diff -u %S/Outputs/call-as-function.swift.expected %t.ranges/call-as-function.swift.expected
1 change: 1 addition & 0 deletions test/refactoring/SyntacticRename/callsites.swift
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,7 @@ func /*mixed:def*/withAllOfTheAbove(x: Int = 2, _: Int..., z: Int = 2, c: () ->
// false positives
/*mixed:call*/withAllOfTheAbove(z: 1, 2, c: {return 1})

// REQUIRES: swift_swift_parser
// RUN: %empty-directory(%t.result)
// RUN: %refactor -find-rename-ranges -source-filename %s -pos="defaults" -is-function-like -old-name "withDefaults(_:y:x:)" -new-name "betterName(x:y:z:)" >> %t.result/callsites_defaults.swift
// RUN: diff -u %S/Outputs/callsites/defaults.swift.expected %t.result/callsites_defaults.swift
Expand Down
1 change: 1 addition & 0 deletions test/refactoring/SyntacticRename/custom-attrs.swift
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,7 @@ struct Bar {
}


// REQUIRES: swift_swift_parser
// RUN: %empty-directory(%t.result)
// RUN: %empty-directory(%t.ranges)
// RUN: %refactor -find-rename-ranges -source-filename %s -pos="wrapper" -is-non-protocol-type -old-name "Foo" >> %t.ranges/custom-attrs-Foo.swift
Expand Down
1 change: 1 addition & 0 deletions test/refactoring/SyntacticRename/fixed_crashes.swift
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,6 @@ enum AnEnum {
case /*last-enum-element:def*/lastOccurrence(a: Int)
}

// REQUIRES: swift_swift_parser
// RUN: %refactor -find-rename-ranges -source-filename %s -pos="last-enum-element" -is-function-like -old-name "lastOccurrence(a:)" -new-name "lastOccurrence(b:)"
// REQUIRES asserts
1 change: 1 addition & 0 deletions test/refactoring/SyntacticRename/functions.swift
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,7 @@ _ = Memberwise(/*memberwise-x:ref*/x: 1, z: 3)
let memberwise = Memberwise.init(/*memberwise-x:ref*/x:z:)
_ = memberwise . /*memberwise-x:ref*/x

// REQUIRES: swift_swift_parser
// RUN: %empty-directory(%t.ranges)
// RUN: %refactor -find-rename-ranges -source-filename %s -pos="import" -is-function-like -old-name "someFunc(a:)" >> %t.ranges/functions_import.swift
// RUN: diff -u %S/Outputs/functions/import.swift.expected %t.ranges/functions_import.swift
Expand Down
1 change: 1 addition & 0 deletions test/refactoring/SyntacticRename/init.swift
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ _ = Test . /*test:ref*/init
_ = Test . /*test:ref*/init(base:)


// REQUIRES: swift_swift_parser
// RUN: %empty-directory(%t.ranges)
// RUN: %refactor -find-rename-ranges -source-filename %s -pos="test" -is-function-like -old-name "init(base:)" >> %t.ranges/init.swift.expected
// RUN: diff -u %S/Outputs/init.swift.expected %t.ranges/init.swift.expected
Expand Down
3 changes: 2 additions & 1 deletion test/refactoring/SyntacticRename/invalid-newname.swift
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
// REQUIRES: swift_swift_parser
// RUN: not %refactor -find-rename-ranges -source-filename %s -pos="ignore" -old-name "a" -new-name " "
// RUN: not %refactor -find-rename-ranges -source-filename %s -pos="ignore" -is-function-like -old-name "foo(a:)" -new-name "foo( :)"
// RUN: not %refactor -find-rename-ranges -source-filename %s -pos="ignore" -is-function-like -old-name "foo" -new-name "foo( )"

func /*ignore*/foo() {}
func /*ignore*/foo() {}
1 change: 1 addition & 0 deletions test/refactoring/SyntacticRename/macro-definition.swift
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
// REQUIRES: swift_swift_parser
// RUN: %empty-directory(%t.ranges)
// RUN: %refactor -find-rename-ranges -source-filename %s -pos="test" -is-function-like -old-name "StringifyMacro" | %FileCheck %s

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ func /*test:def*/test(x: () -> () = {}, _ xx: () -> () = {}, y: () -> () = {}, z
/*test:call*/test(y: {}) {}


// REQUIRES: swift_swift_parser
// RUN: %empty-directory(%t.ranges)
// RUN: %refactor -find-rename-ranges -source-filename %s -pos="test" -is-function-like -old-name "test(x:_:y:z:)" >> %t.ranges/multiple-trailing-closures-defaulted.swift.expected
// RUN: diff -u %S/Outputs/multiple-trailing-closures-defaulted.swift.expected %t.ranges/multiple-trailing-closures-defaulted.swift.expected
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ func /*test:def*/test(x: () -> (), _ xx: () -> (), y: () -> (), z: ()->()) {}
/*test:call*/test {} _: {} y: {} z: {}


// REQUIRES: swift_swift_parser
// RUN: %empty-directory(%t.ranges)
// RUN: %refactor -find-rename-ranges -source-filename %s -pos="test" -is-function-like -old-name "test(x:_:y:z:)" >> %t.ranges/multiple-trailing-closures.swift.expected
// RUN: diff -u %S/Outputs/multiple-trailing-closures.swift.expected %t.ranges/multiple-trailing-closures.swift.expected
1 change: 1 addition & 0 deletions test/refactoring/SyntacticRename/objc-keypath.swift
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ _ = #keyPath(/*Outer*/Outer . /*Inner*/Inner . /*array*/array[0] . hashValue)
// FIXME: Invalid and not resolved
_ = #keyPath(/*Outer:unknown*/Outer . /*Inner:unknown*/Inner . /*dict:unknown*/dict . someKey . undefined)

// REQUIRES: swift_swift_parser
// RUN: %empty-directory(%t)
// RUN: %refactor -find-rename-ranges -source-filename %s -pos="Outer" -old-name "Outer" >> %t/outer.swift
// RUN: diff -u %S/Outputs/objc-keypath/outer.swift.expected %t/outer.swift
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ func uses() {
}


// REQUIRES: swift_swift_parser
// RUN: %empty-directory(%t.result)
// RUN: %empty-directory(%t.ranges)
// RUN: %refactor -find-rename-ranges -source-filename %s -pos="init" -is-function-like -old-name "init(initialValue:)" >> %t.ranges/property-wrapper-init.swift
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ struct User {
}


// REQUIRES: swift_swift_parser
// RUN: %empty-directory(%t.ranges)
// RUN: %refactor -find-rename-ranges -source-filename %s -pos="someValue" -old-name "someValue" >> %t.ranges/property-wrapper-split-someValue.swift
// RUN: diff -u %S/Outputs/property-wrapper-split/someValue.swift.expected %t.ranges/property-wrapper-split-someValue.swift
Expand Down
Loading