fix rebase fallout: AnonConsts are Consts, and Methods are functions

This commit is contained in:
Ralf Jung 2019-02-03 10:06:57 +01:00
parent 276219e0e2
commit cd2169682e
2 changed files with 7 additions and 4 deletions

View file

@ -371,8 +371,11 @@ impl<'hir> Map<'hir> {
let def_id = self.local_def_id(variant.node.data.id()); let def_id = self.local_def_id(variant.node.data.id());
Some(Def::Variant(def_id)) Some(Def::Variant(def_id))
} }
Node::AnonConst(item) => {
let def_id = self.local_def_id(item.id);
Some(Def::Const(def_id))
}
Node::Field(_) | Node::Field(_) |
Node::AnonConst(_) |
Node::Expr(_) | Node::Expr(_) |
Node::Stmt(_) | Node::Stmt(_) |
Node::PathSegment(_) | Node::PathSegment(_) |

View file

@ -575,11 +575,11 @@ fn write_mir_sig(
) -> io::Result<()> { ) -> io::Result<()> {
use rustc::hir::def::Def; use rustc::hir::def::Def;
debug!("write_mir_sig: {:?}", src.def_id); debug!("write_mir_sig: {:?} {:?}", src.def_id, tcx.hir().get_if_local(src.def_id));
let descr = tcx.describe_def(src.def_id).unwrap(); let descr = tcx.describe_def(src.def_id).unwrap();
match (descr, src.promoted) { match (descr, src.promoted) {
(_, Some(i)) => write!(w, "{:?} in", i)?, (_, Some(i)) => write!(w, "{:?} in", i)?,
(Def::Fn(_), _) => write!(w, "fn")?, (Def::Fn(_), _) | (Def::Method(_), _) => write!(w, "fn")?,
(Def::Const(_), _) => write!(w, "const")?, (Def::Const(_), _) => write!(w, "const")?,
(Def::Static(_, /*is_mutbl*/false), _) => write!(w, "static")?, (Def::Static(_, /*is_mutbl*/false), _) => write!(w, "static")?,
(Def::Static(_, /*is_mutbl*/true), _) => write!(w, "static mut")?, (Def::Static(_, /*is_mutbl*/true), _) => write!(w, "static mut")?,
@ -592,7 +592,7 @@ fn write_mir_sig(
})?; })?;
match (descr, src.promoted) { match (descr, src.promoted) {
(Def::Fn(_), None) => { (Def::Fn(_), None) | (Def::Method(_), None) => {
write!(w, "(")?; write!(w, "(")?;
// fn argument types. // fn argument types.