diff options
| author | Jonathan Turner <jonathandturner@users.noreply.github.com> | 2016-08-31 06:29:09 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2016-08-31 06:29:09 -0700 |
| commit | c4602288d2cb3bfd4fb29c44bfaa4bf0c0113e9f (patch) | |
| tree | 62ad67267710a017effd63a0071b300cb0288cca | |
| parent | 051685b2bcddaaf843f39dc96284c964722b1db4 (diff) | |
| parent | bdfcd782bc3fe3d59bd584684c13aca3daa7f562 (diff) | |
| download | rust-c4602288d2cb3bfd4fb29c44bfaa4bf0c0113e9f.tar.gz rust-c4602288d2cb3bfd4fb29c44bfaa4bf0c0113e9f.zip | |
Rollup merge of #36079 - acrrd:new_format_E0318, r=GuillaumeGomez
Update E0318 to new format Fixes #35322. Part of #35233. r? @GuillaumeGomez
| -rw-r--r-- | src/librustc_typeck/coherence/orphan.rs | 10 | ||||
| -rw-r--r-- | src/test/compile-fail/typeck-default-trait-impl-outside-crate.rs | 5 |
2 files changed, 9 insertions, 6 deletions
diff --git a/src/librustc_typeck/coherence/orphan.rs b/src/librustc_typeck/coherence/orphan.rs index a3c043fe7cb..bcce64cb110 100644 --- a/src/librustc_typeck/coherence/orphan.rs +++ b/src/librustc_typeck/coherence/orphan.rs @@ -347,15 +347,19 @@ impl<'cx, 'tcx> OrphanChecker<'cx, 'tcx> { return; } } - hir::ItemDefaultImpl(..) => { + hir::ItemDefaultImpl(_, ref item_trait_ref) => { // "Trait" impl debug!("coherence2::orphan check: default trait impl {}", self.tcx.map.node_to_string(item.id)); let trait_ref = self.tcx.impl_trait_ref(def_id).unwrap(); if trait_ref.def_id.krate != LOCAL_CRATE { - span_err!(self.tcx.sess, item.span, E0318, + struct_span_err!(self.tcx.sess, item_trait_ref.path.span, E0318, "cannot create default implementations for traits outside the \ - crate they're defined in; define a new trait instead"); + crate they're defined in; define a new trait instead") + .span_label(item_trait_ref.path.span, + &format!("`{}` trait not defined in this crate", + item_trait_ref.path)) + .emit(); return; } } diff --git a/src/test/compile-fail/typeck-default-trait-impl-outside-crate.rs b/src/test/compile-fail/typeck-default-trait-impl-outside-crate.rs index 09b97dfb30f..4d71517e060 100644 --- a/src/test/compile-fail/typeck-default-trait-impl-outside-crate.rs +++ b/src/test/compile-fail/typeck-default-trait-impl-outside-crate.rs @@ -10,7 +10,6 @@ #![feature(optin_builtin_traits)] -impl Copy for .. {} -//~^ ERROR E0318 - +impl Copy for .. {} //~ ERROR E0318 + //~^ NOTE `Copy` trait not defined in this crate fn main() {} |
