diff options
| author | Guillaume Gomez <guillaume1.gomez@gmail.com> | 2016-08-23 22:48:03 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2016-08-23 22:48:03 +0200 |
| commit | 142dc491e51ca37c29e6f7d7e20a53c31c7cb3aa (patch) | |
| tree | a7b46eeb3bc83a0de7a3d513e5bd007a0f14a4fc | |
| parent | ed4c0fd01d0b1e0ff274576cf2e5c44ac2793404 (diff) | |
| parent | 5ec6f39a657771447786ef43a79b5b8e6bc329b4 (diff) | |
| download | rust-142dc491e51ca37c29e6f7d7e20a53c31c7cb3aa.tar.gz rust-142dc491e51ca37c29e6f7d7e20a53c31c7cb3aa.zip | |
Rollup merge of #35939 - creativcoder:e0195, r=jonathandturner
Update E0195 to new error format Fixes #35511 Part of #35233 r? @jonathandturner
| -rw-r--r-- | src/librustc_typeck/check/compare_method.rs | 7 | ||||
| -rw-r--r-- | src/test/compile-fail/E0195.rs | 1 | ||||
| -rw-r--r-- | src/test/compile-fail/issue-16048.rs | 1 |
3 files changed, 6 insertions, 3 deletions
diff --git a/src/librustc_typeck/check/compare_method.rs b/src/librustc_typeck/check/compare_method.rs index 0e42990a337..78476e81400 100644 --- a/src/librustc_typeck/check/compare_method.rs +++ b/src/librustc_typeck/check/compare_method.rs @@ -469,10 +469,11 @@ pub fn compare_impl_method<'a, 'tcx>(ccx: &CrateCtxt<'a, 'tcx>, // are zero. Since I don't quite know how to phrase things at // the moment, give a kind of vague error message. if trait_params.len() != impl_params.len() { - span_err!(ccx.tcx.sess, span, E0195, + struct_span_err!(ccx.tcx.sess, span, E0195, "lifetime parameters or bounds on method `{}` do \ - not match the trait declaration", - impl_m.name); + not match the trait declaration",impl_m.name) + .span_label(span, &format!("lifetimes do not match trait")) + .emit(); return false; } diff --git a/src/test/compile-fail/E0195.rs b/src/test/compile-fail/E0195.rs index 0630dfea5e6..06dd903b23d 100644 --- a/src/test/compile-fail/E0195.rs +++ b/src/test/compile-fail/E0195.rs @@ -16,6 +16,7 @@ struct Foo; impl Trait for Foo { fn bar<'a,'b>(x: &'a str, y: &'b str) { //~ ERROR E0195 + //~^ lifetimes do not match trait } } diff --git a/src/test/compile-fail/issue-16048.rs b/src/test/compile-fail/issue-16048.rs index ceac7e968f6..5012556dedd 100644 --- a/src/test/compile-fail/issue-16048.rs +++ b/src/test/compile-fail/issue-16048.rs @@ -29,6 +29,7 @@ impl<'a> Test<'a> for Foo<'a> { impl<'a> NoLifetime for Foo<'a> { fn get<'p, T : Test<'a>>(&self) -> T { //~^ ERROR E0195 +//~| lifetimes do not match trait return *self as T; } } |
