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// run-pass
2use std::ptr::addr_of;
3
4// When the unsized tail is a `dyn Trait`, its alignments is only dynamically known. This means the
5// packed(2) needs to be applied at runtime: the actual alignment of the field is `min(2,
6// usual_alignment)`. Here we check that we do this right by comparing size, alignment, and field
7// offset before and after unsizing.
…lines 8–22 unchanged (15 lines)

After

1use std::ptr::addr_of;
2
3// When the unsized tail is a `dyn Trait`, its alignments is only dynamically known. This means the
4// packed(2) needs to be applied at runtime: the actual alignment of the field is `min(2,
5// usual_alignment)`. Here we check that we do this right by comparing size, alignment, and field
6// offset before and after unsizing.
7fn main() {
…lines 8–21 unchanged (14 lines)

Before

source_file
line_comment
// "//"
use_declaration
use "use"
scoped_identifier
scoped_identifier
identifier "std"
:: "::"
identifier "ptr"
:: "::"
identifier "addr_of"
; ";"
line_comment
// "//"
line_comment
// "//"
line_comment
// "//"
line_comment
// "//"
function_item (+301 nodes collapsed)

After

source_file
use_declaration
use "use"
scoped_identifier
scoped_identifier
identifier "std"
:: "::"
identifier "ptr"
:: "::"
identifier "addr_of"
; ";"
line_comment
// "//"
line_comment
// "//"
line_comment
// "//"
line_comment
// "//"
function_item (+301 nodes collapsed)