don't fire empty_loop in no_std crates
This commit is contained in:
@@ -1,10 +1,8 @@
|
||||
use rustc_hir::{Crate, Expr, ExprKind, QPath};
|
||||
use rustc_lint::{LateContext, LateLintPass};
|
||||
use rustc_session::{declare_tool_lint, impl_lint_pass};
|
||||
use rustc_span::symbol::sym;
|
||||
use syntax::ast::AttrKind;
|
||||
|
||||
use crate::utils::{is_entrypoint_fn, snippet, span_help_and_lint};
|
||||
use crate::utils::{is_entrypoint_fn, is_no_std_crate, snippet, span_help_and_lint};
|
||||
use if_chain::if_chain;
|
||||
|
||||
declare_clippy_lint! {
|
||||
@@ -35,13 +33,7 @@ impl_lint_pass!(MainRecursion => [MAIN_RECURSION]);
|
||||
|
||||
impl LateLintPass<'_, '_> for MainRecursion {
|
||||
fn check_crate(&mut self, _: &LateContext<'_, '_>, krate: &Crate<'_>) {
|
||||
self.has_no_std_attr = krate.attrs.iter().any(|attr| {
|
||||
if let AttrKind::Normal(ref attr) = attr.kind {
|
||||
attr.path == sym::no_std
|
||||
} else {
|
||||
false
|
||||
}
|
||||
});
|
||||
self.has_no_std_attr = is_no_std_crate(krate);
|
||||
}
|
||||
|
||||
fn check_expr_post(&mut self, cx: &LateContext<'_, '_>, expr: &Expr<'_>) {
|
||||
|
||||
Reference in New Issue
Block a user