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","original":"2e672fab","signature":"swift::OpaqueTypeDecl::getOpaqueReturnTypeIdentifier() const"}
2// RUN: not --crash %target-swift-frontend -typecheck %s
3struct a<b {
4 protocol c {
5 struct d {
6 protocol e
7 struct f<g
8 func h -> f<some e>
9

After

1// {"kind":"typecheck","original":"2e672fab","signature":"swift::OpaqueTypeDecl::getOpaqueReturnTypeIdentifier() const","signatureNext":"SourceFile::getOpaqueReturnTypeDecls"}
2// RUN: not --crash %target-swift-frontend -typecheck %s
3struct a<b {
4 protocol c {
5 struct d {
6 protocol e
7 struct f<g
8 func h -> f<some e>
9

Before

source_file
comment "// {\"kind\":\"typecheck\",\"original\":\"2e672fab\",\"signature\":\"sw"...
comment "// RUN: not --crash %target-swift-frontend -typecheck %s"
ERROR (+34 nodes collapsed)

After

source_file
comment "// {\"kind\":\"typecheck\",\"original\":\"2e672fab\",\"signature\":\"sw"...
comment "// RUN: not --crash %target-swift-frontend -typecheck %s"
ERROR (+34 nodes collapsed)