From f0d9d55138fd08f7f4af1c6c311694452369c111 Mon Sep 17 00:00:00 2001 From: Santiago Pastorino Date: Thu, 20 Jun 2019 03:02:53 +0200 Subject: [PATCH] Implement Debug for PlaceBase --- src/librustc/mir/mod.rs | 48 +++++++++++++++++++++-------------------- 1 file changed, 25 insertions(+), 23 deletions(-) diff --git a/src/librustc/mir/mod.rs b/src/librustc/mir/mod.rs index 9dfd8d959a3c4..6e09cc0452828 100644 --- a/src/librustc/mir/mod.rs +++ b/src/librustc/mir/mod.rs @@ -2184,29 +2184,7 @@ impl<'tcx> Debug for Place<'tcx> { }); self.iterate(|place_base, place_projections| { - match place_base { - PlaceBase::Local(id) => { - write!(fmt, "{:?}", id)?; - } - PlaceBase::Static(box self::Static { ty, kind: StaticKind::Static(def_id) }) => { - write!( - fmt, - "({}: {:?})", - ty::tls::with(|tcx| tcx.def_path_str(*def_id)), - ty - )?; - }, - PlaceBase::Static( - box self::Static { ty, kind: StaticKind::Promoted(promoted) } - ) => { - write!( - fmt, - "({:?}: {:?})", - promoted, - ty - )?; - }, - } + write!(fmt, "{:?}", place_base)?; for projection in place_projections { match projection.elem { @@ -2256,6 +2234,30 @@ impl<'tcx> Debug for Place<'tcx> { } } +impl Debug for PlaceBase<'_> { + fn fmt(&self, fmt: &mut Formatter<'_>) -> fmt::Result { + match *self { + PlaceBase::Local(id) => write!(fmt, "{:?}", id), + PlaceBase::Static(box self::Static { ty, kind: StaticKind::Static(def_id) }) => { + write!( + fmt, + "({}: {:?})", + ty::tls::with(|tcx| tcx.def_path_str(def_id)), + ty + ) + }, + PlaceBase::Static(box self::Static { ty, kind: StaticKind::Promoted(promoted) }) => { + write!( + fmt, + "({:?}: {:?})", + promoted, + ty + ) + }, + } + } +} + /////////////////////////////////////////////////////////////////////////// // Scopes