Code view:

A painting is a person's account of this edit as text, recorded independently of the node mapping - a rendering often has several equally defensible answers where the mapping has one. Deletions and insertions carry no position on the opposite side in a painting, so that panel draws no caret for them.

Before

1// {"kind":"typecheck","signature":"swift::constraints::RequirementFailure::RequirementFailure(swift::constraints::Solution const&, swift::Type, swift::Type, swift::constraints::ConstraintLocator*)","signatureAssert":"Assertion failed: (AffectedDecl), function RequirementFailure"}
2// RUN: not --crash %target-swift-frontend -typecheck %s
3protocol a
4 struct b<c
5 extension b where c: a {
6 typealias d<c> =
7 }
8 b<Int>
9.d
10

After

1// {"kind":"typecheck","signature":"swift::constraints::RequirementFailure::RequirementFailure(swift::constraints::Solution const&, swift::Type, swift::Type, swift::constraints::ConstraintLocator*)","signatureAssert":"Assertion failed: (AffectedDecl), function RequirementFailure","signatureNext":"MissingConformanceFailure::MissingConformanceFailure"}
2// RUN: not --crash %target-swift-frontend -typecheck %s
3protocol a
4 struct b<c
5 extension b where c: a {
6 typealias d<c> =
7 }
8 b<Int>
9.d
10

Before

source_file
comment "// {\"kind\":\"typecheck\",\"signature\":\"swift::constraints::Requ"...
comment "// RUN: not --crash %target-swift-frontend -typecheck %s"
ERROR
protocol "protocol"
simple_identifier "a"
struct "struct"
simple_identifier "b"
< "<"
type_identifier "c"
class_declaration (+27 nodes collapsed)
comparison_expression
simple_identifier "b"
< "<"
comparison_expression
simple_identifier "Int"
> ">"
prefix_expression
. "."
simple_identifier "d"

After

source_file
comment "// {\"kind\":\"typecheck\",\"signature\":\"swift::constraints::Requ"...
comment "// RUN: not --crash %target-swift-frontend -typecheck %s"
ERROR
protocol "protocol"
simple_identifier "a"
struct "struct"
simple_identifier "b"
< "<"
type_identifier "c"
class_declaration (+27 nodes collapsed)
comparison_expression
simple_identifier "b"
< "<"
comparison_expression
simple_identifier "Int"
> ">"
prefix_expression
. "."
simple_identifier "d"