Rollup merge of #36079 - acrrd:new_format_E0318, r=GuillaumeGomez

Update E0318 to new format

Fixes #35322.
Part of #35233.

r? @GuillaumeGomez
This commit is contained in:
Jonathan Turner 2016-08-31 06:29:09 -07:00 committed by GitHub
commit c4602288d2
2 changed files with 9 additions and 6 deletions

View File

@ -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;
}
}

View File

@ -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() {}