Rollup merge of #63612 - estebank:macro-sugg-try-into, r=Centril

Do not suggest `try_into` for base types inside of macro expansions
This commit is contained in:
Mazdak Farrokhzad 2019-08-16 08:26:40 +02:00 committed by GitHub
commit 8958e50618
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 18 additions and 0 deletions

View file

@ -554,6 +554,10 @@ impl<'a, 'tcx> FnCtxt<'a, 'tcx> {
// FIXME(estebank): modify once we decide to suggest `as` casts
return false;
}
if !self.tcx.sess.source_map().span_to_filename(expr.span).is_real() {
// Ignore if span is from within a macro.
return false;
}
// If casting this expression to a given numeric type would be appropriate in case of a type
// mismatch.

View file

@ -0,0 +1,3 @@
fn main() {
assert_eq!(10u64, 10usize); //~ ERROR mismatched types
}

View file

@ -0,0 +1,11 @@
error[E0308]: mismatched types
--> $DIR/dont-suggest-try_into-in-macros.rs:2:5
|
LL | assert_eq!(10u64, 10usize);
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected u64, found usize
|
= note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)
error: aborting due to previous error
For more information about this error, try `rustc --explain E0308`.