Skip to content

Commit 8306f87

Browse files
committed
DiagnosticVerifier: Default expected fix-it end line to start line
1 parent 75c1b6e commit 8306f87

File tree

2 files changed

+14
-0
lines changed

2 files changed

+14
-0
lines changed

lib/Frontend/DiagnosticVerifier.cpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -461,6 +461,8 @@ static Optional<LineColumnRange> parseExpectedFixItRange(
461461

462462
if (const auto lineAndCol = parseLineAndColumn()) {
463463
std::tie(Range.EndLine, Range.EndCol) = lineAndCol.value();
464+
if (Range.EndLine == LineColumnRange::NoValue)
465+
Range.EndLine = Range.StartLine;
464466
} else {
465467
return None;
466468
}

test/Frontend/verify-fixits.swift

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -225,6 +225,18 @@ func test1Fixits() {
225225
labeledFunc(aax: 0, bb: 1) // expected-error {{incorrect argument label in call (have 'aax:bb:', expected 'aa:bb:')}} {{61:15-+1:18=aa}}
226226
}
227227

228+
func unlabeledFunc(_ aa: Int) {}
229+
230+
func testDefaultedLineNumbers() {
231+
// Fix-it end line defaults to first line.
232+
// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
233+
unlabeledFunc(aa: // expected-error {{extraneous argument label 'aa:' in call}} {{+0:17-+1:5=}}
234+
1)
235+
// CHECK: [[@LINE+1]]:83: error: expected fix-it not seen; actual fix-it seen: {{{{}}17-[[@LINE+2]]:5=}}
236+
unlabeledFunc(aa: // expected-error {{extraneous argument label 'aa:' in call}} {{+0:17-5=}}
237+
1)
238+
}
239+
228240
func test2Fixits() {
229241
labeledFunc(aax: 0, bbx: 1) // expected-error {{incorrect argument labels in call (have 'aax:bbx:', expected 'aa:bb:')}}
230242

0 commit comments

Comments
 (0)