Do not suggest try_into for base types inside of macro expansions

This commit is contained in:
Esteban Küber 2019-08-15 11:46:52 -07:00
parent f7af19c279
commit fbf1efb949
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`.