rustc: Panic by default in DefIdTree::parent
Only crate root def-ids don't have a parent, and in majority of cases the argument of `DefIdTree::parent` cannot be a crate root. So we now panic by default in `parent` and introduce a new non-panicing function `opt_parent` for cases where the argument can be a crate root. Same applies to `local_parent`/`opt_local_parent`.
This commit is contained in:
parent
a933de8398
commit
5b5964f569
50 changed files with 162 additions and 176 deletions
|
@ -27,7 +27,7 @@ struct EntryContext<'tcx> {
|
|||
|
||||
impl<'tcx> ItemLikeVisitor<'tcx> for EntryContext<'tcx> {
|
||||
fn visit_item(&mut self, item: &'tcx Item<'tcx>) {
|
||||
let at_root = self.tcx.local_parent(item.def_id) == Some(CRATE_DEF_ID);
|
||||
let at_root = self.tcx.opt_local_parent(item.def_id) == Some(CRATE_DEF_ID);
|
||||
find_item(item, self, at_root);
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue