-use crate::utils::span_lint_and_help;
-
+use clippy_utils::diagnostics::span_lint_and_help;
use rustc_hir::{CaptureBy, Expr, ExprKind, PatKind};
use rustc_lint::{LateContext, LateLintPass};
use rustc_session::{declare_lint_pass, declare_tool_lint};
declare_clippy_lint! {
/// **What it does:** Checks for instances of `map_err(|_| Some::Enum)`
///
- /// **Why is this bad?** This map_err throws away the original error rather than allowing the enum to contain and report the cause of the error
+ /// **Why is this bad?** This `map_err` throws away the original error rather than allowing the enum to contain and report the cause of the error
///
/// **Known problems:** None.
///
/// }
/// ```
pub MAP_ERR_IGNORE,
- pedantic,
+ restriction,
"`map_err` should not ignore the original error"
}
cx,
MAP_ERR_IGNORE,
body_span,
- "`map_err(|_|...` ignores the original error",
+ "`map_err(|_|...` wildcard pattern discards the original error",
None,
- "Consider wrapping the error in an enum variant",
+ "consider storing the original error as a source in the new error, or silence this warning using an ignored identifier (`.map_err(|_foo| ...`)",
);
}
}