rustc_metadata: fix compilation

This commit is contained in:
Florian Diebold 2016-10-29 14:39:24 +02:00 committed by Florian Diebold
parent 0cdd1d4bc1
commit 441e099195
2 changed files with 13 additions and 5 deletions

View File

@ -8,9 +8,10 @@
// option. This file may not be copied, modified, or distributed
// except according to those terms.
use rustc::hir;
use rustc::hir::map as ast_map;
use rustc::hir::intravisit::{Visitor, IdRangeComputingVisitor, IdRange};
use rustc::hir::intravisit::{Visitor, IdRangeComputingVisitor, IdRange, NestedVisitMode};
use cstore::CrateMetadata;
use encoder::EncodeContext;
@ -43,7 +44,7 @@ enum TableEntry<'tcx> {
}
impl<'a, 'tcx> EncodeContext<'a, 'tcx> {
pub fn encode_inlined_item(&mut self, ii: InlinedItemRef) -> Lazy<Ast<'tcx>> {
pub fn encode_inlined_item(&mut self, ii: InlinedItemRef<'tcx>) -> Lazy<Ast<'tcx>> {
let mut id_visitor = IdRangeComputingVisitor::new(&self.tcx.map);
match ii {
InlinedItemRef::Item(_, i) => id_visitor.visit_item(i),
@ -81,7 +82,11 @@ struct SideTableEncodingIdVisitor<'a, 'b: 'a, 'tcx: 'b> {
count: usize,
}
impl<'a, 'b, 'tcx, 'v> Visitor<'v> for SideTableEncodingIdVisitor<'a, 'b, 'tcx> {
impl<'a, 'b, 'tcx> Visitor<'tcx> for SideTableEncodingIdVisitor<'a, 'b, 'tcx> {
fn nested_visit_map(&mut self) -> Option<(&hir::map::Map<'tcx>, NestedVisitMode)> {
Some((&self.ecx.tcx.map, NestedVisitMode::OnlyBodies))
}
fn visit_id(&mut self, id: ast::NodeId) {
debug!("Encoding side tables for id {}", id);

View File

@ -39,7 +39,7 @@ use syntax_pos;
use rustc::hir::{self, PatKind};
use rustc::hir::itemlikevisit::ItemLikeVisitor;
use rustc::hir::intravisit::Visitor;
use rustc::hir::intravisit::{Visitor, NestedVisitMode};
use rustc::hir::intravisit;
use super::index_builder::{FromId, IndexBuilder, Untracked};
@ -630,7 +630,7 @@ impl<'a, 'tcx> EncodeContext<'a, 'tcx> {
self.tcx.lookup_deprecation(def_id).map(|depr| self.lazy(&depr))
}
fn encode_info_for_item(&mut self, (def_id, item): (DefId, &hir::Item)) -> Entry<'tcx> {
fn encode_info_for_item(&mut self, (def_id, item): (DefId, &'tcx hir::Item)) -> Entry<'tcx> {
let tcx = self.tcx;
debug!("encoding info for item at {}",
@ -973,6 +973,9 @@ struct EncodeVisitor<'a, 'b: 'a, 'tcx: 'b> {
}
impl<'a, 'b, 'tcx> Visitor<'tcx> for EncodeVisitor<'a, 'b, 'tcx> {
fn nested_visit_map(&mut self) -> Option<(&hir::map::Map<'tcx>, NestedVisitMode)> {
Some((&self.index.tcx.map, NestedVisitMode::OnlyBodies))
}
fn visit_expr(&mut self, ex: &'tcx hir::Expr) {
intravisit::walk_expr(self, ex);
self.index.encode_info_for_expr(ex);