diff --git a/src/librustc/ty/maps/plumbing.rs b/src/librustc/ty/maps/plumbing.rs index 739537c7c3a7..3440282db2d6 100644 --- a/src/librustc/ty/maps/plumbing.rs +++ b/src/librustc/ty/maps/plumbing.rs @@ -86,12 +86,12 @@ impl<'a, 'gcx, 'tcx> TyCtxt<'a, 'gcx, 'tcx> { "unsupported cyclic reference between types/traits detected"); err.span_label(span, "cyclic reference"); - err.span_note(stack[0].0, &format!("the cycle begins when {}...", - stack[0].1.describe(self))); + err.span_note(self.sess.codemap().def_span(stack[0].0), + &format!("the cycle begins when {}...", stack[0].1.describe(self))); for &(span, ref query) in &stack[1..] { - err.span_note(span, &format!("...which then requires {}...", - query.describe(self))); + err.span_note(self.sess.codemap().def_span(span), + &format!("...which then requires {}...", query.describe(self))); } err.note(&format!("...which then again requires {}, completing the cycle.", diff --git a/src/test/ui/impl-trait/auto-trait-leak.stderr b/src/test/ui/impl-trait/auto-trait-leak.stderr index 90476eb2d0d7..ac5c79be6a93 100644 --- a/src/test/ui/impl-trait/auto-trait-leak.stderr +++ b/src/test/ui/impl-trait/auto-trait-leak.stderr @@ -35,14 +35,8 @@ error[E0391]: unsupported cyclic reference between types/traits detected note: the cycle begins when processing `cycle1`... --> $DIR/auto-trait-leak.rs:52:1 | -52 | / fn cycle1() -> impl Clone { -53 | | //~^ ERROR unsupported cyclic reference between types/traits detected -54 | | //~| cyclic reference -55 | | //~| NOTE the cycle begins when processing `cycle1`... -... | -60 | | Rc::new(Cell::new(5)) -61 | | } - | |_^ +52 | fn cycle1() -> impl Clone { + | ^^^^^^^^^^^^^^^^^^^^^^^^^ note: ...which then requires processing `cycle2::{{impl-Trait}}`... --> $DIR/auto-trait-leak.rs:63:16 | @@ -51,14 +45,8 @@ note: ...which then requires processing `cycle2::{{impl-Trait}}`... note: ...which then requires processing `cycle2`... --> $DIR/auto-trait-leak.rs:63:1 | -63 | / fn cycle2() -> impl Clone { -64 | | //~^ NOTE ...which then requires processing `cycle2::{{impl-Trait}}`... -65 | | //~| NOTE ...which then requires processing `cycle2`... -66 | | send(cycle1().clone()); -67 | | -68 | | Rc::new(String::from("foo")) -69 | | } - | |_^ +63 | fn cycle2() -> impl Clone { + | ^^^^^^^^^^^^^^^^^^^^^^^^^ note: ...which then requires processing `cycle1::{{impl-Trait}}`... --> $DIR/auto-trait-leak.rs:52:16 |