diff options
| author | bors <bors@rust-lang.org> | 2017-01-25 11:59:18 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2017-01-25 11:59:18 +0000 |
| commit | 1283c029557bcde106adde71f467fe133b3ffeff (patch) | |
| tree | a359a6891a293be769f647efac38220d49edff9f /src | |
| parent | 185d908f6139a579c043e542ac3a154dff574953 (diff) | |
| parent | 5e33c5f0ff92ca30b4d20803b6f919153336180d (diff) | |
| download | rust-1283c029557bcde106adde71f467fe133b3ffeff.tar.gz rust-1283c029557bcde106adde71f467fe133b3ffeff.zip | |
Auto merge of #39286 - nrc:save-path, r=eddyb
save-analysis: polishing paths a couple of minor changes that get us better coverage of different paths. r? @eddyb
Diffstat (limited to 'src')
| -rw-r--r-- | src/librustc_save_analysis/dump_visitor.rs | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/librustc_save_analysis/dump_visitor.rs b/src/librustc_save_analysis/dump_visitor.rs index 4e4b3570289..e5c41d08e1f 100644 --- a/src/librustc_save_analysis/dump_visitor.rs +++ b/src/librustc_save_analysis/dump_visitor.rs @@ -1359,6 +1359,7 @@ impl<'l, 'tcx: 'l, 'll, D: Dump +'ll> Visitor<'l> for DumpVisitor<'l, 'tcx, 'll, } self.write_sub_paths_truncated(path); + visit::walk_path(self, path); } ast::TyKind::Array(ref element, ref length) => { self.visit_ty(element); @@ -1369,6 +1370,7 @@ impl<'l, 'tcx: 'l, 'll, D: Dump +'ll> Visitor<'l> for DumpVisitor<'l, 'tcx, 'll, } fn visit_expr(&mut self, ex: &'l ast::Expr) { + debug!("visit_expr {:?}", ex.node); self.process_macro_use(ex.span, ex.id); match ex.node { ast::ExprKind::Call(ref _f, ref _args) => { @@ -1462,6 +1464,7 @@ impl<'l, 'tcx: 'l, 'll, D: Dump +'ll> Visitor<'l> for DumpVisitor<'l, 'tcx, 'll, ast::ExprKind::WhileLet(ref pattern, ref subexpression, ref block, _) => { let value = self.span.snippet(subexpression.span); self.process_var_decl(pattern, value); + debug!("for loop, walk sub-expr: {:?}", subexpression.node); visit::walk_expr(self, subexpression); visit::walk_block(self, block); } @@ -1556,6 +1559,10 @@ impl<'l, 'tcx: 'l, 'll, D: Dump +'ll> Visitor<'l> for DumpVisitor<'l, 'tcx, 'll, self.visit_expr(&arm.body); } + fn visit_path(&mut self, p: &'l ast::Path, id: NodeId) { + self.process_path(id, p, None); + } + fn visit_stmt(&mut self, s: &'l ast::Stmt) { self.process_macro_use(s.span, s.id); visit::walk_stmt(self, s) |
