Provide a better diagnostic on failure to meet send bound on futures in a foreign crate

Adding diagnostic data on generators to the crate metadata and using it to provide
a better diagnostic on failure to meet send bound on futures originated from a foreign crate
This commit is contained in:
oribenshir 2022-03-05 12:04:32 +02:00
parent 07bb916d44
commit ebe3c56c6e
11 changed files with 248 additions and 54 deletions

View file

@ -1962,4 +1962,10 @@ rustc_queries! {
eval_always
desc { "computing the backend features for CLI flags" }
}
query generator_diagnostic_data(key: DefId) -> Option<GeneratorDiagnosticData<'tcx>> {
storage(ArenaCacheSelector<'tcx>)
desc { |tcx| "looking up generator diagnostic data of `{}`", tcx.def_path_str(key) }
separate_provide_extern
}
}