Don't diagnose #[cfg] in macros

This commit is contained in:
Jonas Schievink 2020-12-03 20:46:16 +01:00
parent 070ecef249
commit 6e1c87eb92

View File

@ -135,6 +135,11 @@ pub(crate) fn diagnostics(
res.borrow_mut().push(warning_with_fix(d, &sema));
})
.on::<hir::diagnostics::InactiveCode, _>(|d| {
// If there's inactive code somewhere in a macro, don't propagate to the call-site.
if d.display_source().file_id.expansion_info(db).is_some() {
return;
}
// Override severity and mark as unused.
res.borrow_mut().push(
Diagnostic::hint(sema.diagnostics_display_range(d).range, d.message())