auto merge of #11585 : nikomatsakis/rust/issue-3511-rvalue-lifetimes, r=pcwalton
Major changes: - Define temporary scopes in a syntax-based way that basically defaults to the innermost statement or conditional block, except for in a `let` initializer, where we default to the innermost block. Rules are documented in the code, but not in the manual (yet). See new test run-pass/cleanup-value-scopes.rs for examples. - Refactors Datum to better define cleanup roles. - Refactor cleanup scopes to not be tied to basic blocks, permitting us to have a very large number of scopes (one per AST node). - Introduce nascent documentation in trans/doc.rs covering datums and cleanup in a more comprehensive way. r? @pcwalton
This commit is contained in:
@@ -567,11 +567,7 @@ pub fn visit_ids_for_inlined_item<O: IdVisitingOperation>(item: &InlinedItem,
|
||||
visited_outermost: false,
|
||||
};
|
||||
|
||||
match *item {
|
||||
IIItem(i) => id_visitor.visit_item(i, ()),
|
||||
IIForeign(i) => id_visitor.visit_foreign_item(i, ()),
|
||||
IIMethod(_, _, m) => visit::walk_method_helper(&mut id_visitor, m, ()),
|
||||
}
|
||||
visit::walk_inlined_item(&mut id_visitor, item, ());
|
||||
}
|
||||
|
||||
struct IdRangeComputingVisitor {
|
||||
|
||||
Reference in New Issue
Block a user