Skip to content

Commit dcf9845

Browse files
committed
DiagnosticVerifier: Don't render a range if the lines and columns match
1 parent 9a161d8 commit dcf9845

File tree

4 files changed

+11
-8
lines changed

4 files changed

+11
-8
lines changed

lib/Frontend/DiagnosticVerifier.cpp

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -317,11 +317,14 @@ DiagnosticVerifier::renderFixits(ArrayRef<CapturedFixItInfo> ActualFixIts,
317317
OS << ActualRange.StartLine << ':';
318318
OS << ActualRange.StartCol;
319319

320-
OS << '-';
320+
const bool isMultiline = ActualRange.StartLine != ActualRange.EndLine;
321+
if (isMultiline || ActualRange.StartCol != ActualRange.EndCol) {
322+
OS << '-';
321323

322-
if (ActualRange.EndLine != ActualRange.StartLine)
323-
OS << ActualRange.EndLine << ':';
324-
OS << ActualRange.EndCol;
324+
if (isMultiline)
325+
OS << ActualRange.EndLine << ':';
326+
OS << ActualRange.EndCol;
327+
}
325328

326329
OS << '=';
327330

test/FixCode/verify-fixits.swift.result

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
func f1() {
66
guard true { return } // expected-error {{expected 'else' after 'guard' condition}}
77

8-
guard true { return } // expected-error {{expected 'else' after 'guard' condition}} {{14-14=else }} {{none}}
8+
guard true { return } // expected-error {{expected 'else' after 'guard' condition}} {{14=else }} {{none}}
99
}
1010

1111
func labeledFunc(aa: Int, bb: Int) {}

test/Frontend/verify-fixits.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -274,6 +274,6 @@ func testFixitWithLocation(_: inout Bool) {
274274
// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
275275
testFixitWithLocation(bool) // expected-error {{passing value of type 'Bool' to an inout parameter requires explicit '&'}} {{25-25=&}}
276276

277-
// CHECK: [[@LINE+1]]:126: error: expected fix-it not seen; actual fix-it seen: {{{{}}25-25=&}}
277+
// CHECK: [[@LINE+1]]:126: error: expected fix-it not seen; actual fix-it seen: {{{{}}25=&}}
278278
testFixitWithLocation(bool) // expected-error {{passing value of type 'Bool' to an inout parameter requires explicit '&'}} {{24-24=&}}
279279
}

test/diagnostics/verifier.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,12 @@ let y: Int = "hello, world!" // expected-error@:49 {{cannot convert value of typ
1616
// Wrong fix-it
1717
let z: Int = "hello, world!" as Any
1818
// expected-error@-1 {{cannot convert value of type}} {{3-3=foobarbaz}}
19-
// CHECK: expected fix-it not seen; actual fix-it seen: {{[{][{]}}36-36= as! Int{{[}][}]}}
19+
// CHECK: expected fix-it not seen; actual fix-it seen: {{[{][{]}}36= as! Int{{[}][}]}}
2020

2121
// Expected no fix-it
2222
let a: Bool = "hello, world!" as Any
2323
// expected-error@-1 {{cannot convert value of type}} {{none}}
24-
// CHECK: expected no fix-its; actual fix-it seen: {{[{][{]}}37-37= as! Bool{{[}][}]}}
24+
// CHECK: expected no fix-its; actual fix-it seen: {{[{][{]}}37= as! Bool{{[}][}]}}
2525

2626
// Unexpected error
2727
_ = foo()

0 commit comments

Comments
 (0)