about summary refs log tree commit diff
path: root/clippy_lints
diff options
context:
space:
mode:
authorEvan Typanski <evan.typanski@microfocus.com>2022-06-23 16:34:52 -0400
committerEvan Typanski <evan.typanski@microfocus.com>2022-06-23 16:49:31 -0400
commitdf26c3f551fec5854e3acd140782b8f8c98e987b (patch)
tree576de23bc0220c2cbc3c29ece409411373cd9152 /clippy_lints
parent92704b494a5c284cd426d8f386c60cd1ef2c48fd (diff)
downloadrust-df26c3f551fec5854e3acd140782b8f8c98e987b.tar.gz
rust-df26c3f551fec5854e3acd140782b8f8c98e987b.zip
Add external macro guard and test middle MSRV
Diffstat (limited to 'clippy_lints')
-rw-r--r--clippy_lints/src/manual_rem_euclid.rs7
1 files changed, 6 insertions, 1 deletions
diff --git a/clippy_lints/src/manual_rem_euclid.rs b/clippy_lints/src/manual_rem_euclid.rs
index 492bd4db434..b5698965fc3 100644
--- a/clippy_lints/src/manual_rem_euclid.rs
+++ b/clippy_lints/src/manual_rem_euclid.rs
@@ -4,7 +4,8 @@ use clippy_utils::source::snippet_with_applicability;
 use clippy_utils::{in_constant, meets_msrv, msrvs, path_to_local};
 use rustc_errors::Applicability;
 use rustc_hir::{BinOpKind, Expr, ExprKind, Node, TyKind};
-use rustc_lint::{LateContext, LateLintPass};
+use rustc_lint::{LateContext, LateLintPass, LintContext};
+use rustc_middle::lint::in_external_macro;
 use rustc_semver::RustcVersion;
 use rustc_session::{declare_tool_lint, impl_lint_pass};
 
@@ -55,6 +56,10 @@ impl<'tcx> LateLintPass<'tcx> for ManualRemEuclid {
             return;
         }
 
+        if in_external_macro(cx.sess(), expr.span) {
+            return;
+        }
+
         if let ExprKind::Binary(op1, expr1, right) = expr.kind
             && op1.node == BinOpKind::Rem
             && let Some(const1) = check_for_unsigned_int_constant(cx, right)