diff --git a/rr_frontend/.cargo/config.toml b/rr_frontend/.cargo/config.toml
index a4f08575ed7e43af7b407427472c317c9ac777ff..05a9e34546e1bcf1365a3f45c174d384b753b784 100644
--- a/rr_frontend/.cargo/config.toml
+++ b/rr_frontend/.cargo/config.toml
@@ -80,7 +80,6 @@ rustflags = [
     "-Aclippy::unwrap_in_result",
 
     # clippy::style
-    "-Aclippy::match_like_matches_macro",
     "-Aclippy::needless_borrow",
     "-Aclippy::needless_late_init",
     "-Aclippy::needless_return",
diff --git a/rr_frontend/radium/src/specs.rs b/rr_frontend/radium/src/specs.rs
index d57b2372d119ce93b3ade48e72745d609563c653..c35c57500e2b5e80de37fa8c867170390fa15003 100644
--- a/rr_frontend/radium/src/specs.rs
+++ b/rr_frontend/radium/src/specs.rs
@@ -306,10 +306,7 @@ impl SynType {
 
     /// Check if the SynType contains a free variable `Var(i)`.
     pub const fn is_closed(&self) -> bool {
-        match self {
-            Self::Var(_) => false,
-            _ => true,
-        }
+        !matches!(self, Self::Var(_))
     }
 
     /// Substitute variables `Var` according to the given substitution (variable `i` is mapped to
diff --git a/rr_frontend/translation/src/checked_op_analysis.rs b/rr_frontend/translation/src/checked_op_analysis.rs
index b7295099180085d8cc82f5c11ece016bc6dcb2cf..29a4a2f1e6be53bdcc47023b427c6bf455762f26 100644
--- a/rr_frontend/translation/src/checked_op_analysis.rs
+++ b/rr_frontend/translation/src/checked_op_analysis.rs
@@ -33,7 +33,7 @@ impl<'def, 'tcx> CheckedOpLocalAnalysis<'def, 'tcx> {
     }
 
     const fn is_checked_op(&self, val: &Rvalue<'tcx>) -> bool {
-        if let Rvalue::CheckedBinaryOp(_, _) = *val { true } else { false }
+        matches!(*val, Rvalue::CheckedBinaryOp(_, _))
     }
 
     /// Get the type of a checked-op result.
diff --git a/rr_frontend/translation/src/environment/polonius_info.rs b/rr_frontend/translation/src/environment/polonius_info.rs
index 2d16fdaf96c13bbade29bd04b3a454827c95559c..bc5d9edf7adfd3a46c73af0da001c8ea8e9a70d3 100644
--- a/rr_frontend/translation/src/environment/polonius_info.rs
+++ b/rr_frontend/translation/src/environment/polonius_info.rs
@@ -55,31 +55,19 @@ pub enum AtomicRegion {
 
 impl AtomicRegion {
     pub const fn is_loan(&self) -> bool {
-        match *self {
-            Self::Loan(_, _) => true,
-            _ => false,
-        }
+        matches!(*self, Self::Loan(_, _))
     }
 
     pub const fn is_universal(&self) -> bool {
-        match *self {
-            Self::Universal(_, _) => true,
-            _ => false,
-        }
+        matches!(*self, Self::Universal(_, _))
     }
 
     pub const fn is_place(&self) -> bool {
-        match *self {
-            Self::PlaceRegion(_) => true,
-            _ => false,
-        }
+        matches!(*self, Self::PlaceRegion(_))
     }
 
     pub const fn is_value(&self) -> bool {
-        match *self {
-            Self::Unknown(_) => true,
-            _ => false,
-        }
+        matches!(*self, Self::Unknown(_))
     }
 
     pub const fn get_region(&self) -> facts::Region {
@@ -1061,21 +1049,20 @@ impl<'a, 'tcx: 'a> PoloniusInfo<'a, 'tcx> {
         loan: facts::Loan,
         location: mir::Location,
     ) -> Vec<facts::Loan> {
-        if let Some(all_conflicting_loans) = self.loan_conflict_sets.get(&loan) {
-            let point = self.get_point(location, facts::PointType::Mid);
-            if let Some(alive_loans) = self.borrowck_out_facts.loan_live_at.get(&point) {
-                let alive_conflicting_loans =
-                    all_conflicting_loans.iter().filter(|loan| alive_loans.contains(loan)).cloned().collect();
-                trace!(
-                    "get_alive_conflicting_loans({:?}, {:?}) = {:?}",
-                    loan,
-                    location,
-                    alive_conflicting_loans
-                );
-                return alive_conflicting_loans;
-            }
-        }
-        Vec::new()
+        let Some(all_conflicting_loans) = self.loan_conflict_sets.get(&loan) else {
+            return Vec::new();
+        };
+
+        let point = self.get_point(location, facts::PointType::Mid);
+        let Some(alive_loans) = self.borrowck_out_facts.loan_live_at.get(&point) else {
+            return Vec::new();
+        };
+
+        let alive_conflicting_loans =
+            all_conflicting_loans.iter().filter(|loan| alive_loans.contains(loan)).cloned().collect();
+        trace!("get_alive_conflicting_loans({:?}, {:?}) = {:?}", loan, location, alive_conflicting_loans);
+
+        alive_conflicting_loans
     }
 
     /// Get the location at which a loan is created, if possible
diff --git a/rr_frontend/translation/src/function_body.rs b/rr_frontend/translation/src/function_body.rs
index 006cce4bd6c544fe79e6d33fc141eb07c59b3a98..02b99c78ef7f4ab71b1c8b2f5a4e08ce2169882a 100644
--- a/rr_frontend/translation/src/function_body.rs
+++ b/rr_frontend/translation/src/function_body.rs
@@ -1057,18 +1057,21 @@ impl<'a, 'def: 'a, 'tcx: 'def> FunctionTranslator<'a, 'def, 'tcx> {
             let lft1 = self.info.mk_atomic_region(*r1);
             let lft2 = self.info.mk_atomic_region(*r2);
 
-            if let info::AtomicRegion::Universal(info::UniversalRegionKind::Local, _) = lft1 {
-                // this is a constraint we care about here, add it
-                if !self.inclusion_tracker.check_inclusion(*r1, *r2, root_point) {
-                    self.inclusion_tracker.add_static_inclusion(*r1, *r2, root_point);
-                    self.inclusion_tracker.add_static_inclusion(*r2, *r1, root_point);
-                    assert!(match lft2 {
-                        info::AtomicRegion::PlaceRegion(_) => true,
-                        _ => false,
-                    });
-                    initial_arg_mapping.push((lft1, lft2));
-                }
+            let info::AtomicRegion::Universal(info::UniversalRegionKind::Local, _) = lft1 else {
+                continue;
+            };
+
+            // this is a constraint we care about here, add it
+            if self.inclusion_tracker.check_inclusion(*r1, *r2, root_point) {
+                continue;
             }
+
+            self.inclusion_tracker.add_static_inclusion(*r1, *r2, root_point);
+            self.inclusion_tracker.add_static_inclusion(*r2, *r1, root_point);
+
+            assert!(matches!(lft2, info::AtomicRegion::PlaceRegion(_)));
+
+            initial_arg_mapping.push((lft1, lft2));
         }
         initial_arg_mapping
     }
@@ -1236,50 +1239,6 @@ impl<'a, 'def: 'a, 'tcx: 'def> BodyTranslator<'a, 'def, 'tcx> {
         Ok(self.translated_fn.into())
     }
 
-    /// Determine initial constraints between universal regions and local place regions.
-    /// Returns an initial mapping for the name _map that initializes place regions of arguments
-    /// with universals.
-    fn get_initial_universal_arg_constraints(&mut self) -> Vec<(info::AtomicRegion, info::AtomicRegion)> {
-        // Polonius generates a base subset constraint uregion ⊑ pregion.
-        // We turn that into pregion = uregion, as we do strong updates at the top-level.
-        let info = &self.info;
-        let input_facts = &info.borrowck_in_facts;
-        let subset_base = &input_facts.subset_base;
-
-        let root_location = Location {
-            block: BasicBlock::from_u32(0),
-            statement_index: 0,
-        };
-        let root_point = self.info.interner.get_point_index(&facts::Point {
-            location: root_location,
-            typ: facts::PointType::Start,
-        });
-
-        // TODO: for nested references, this doesn't really seem to work.
-        // Problem is that we don't have constraints for the mapping of nested references.
-        // Potentially, we should instead just equalize the types
-
-        let mut initial_arg_mapping = Vec::new();
-        for (r1, r2, _) in subset_base {
-            let lft1 = self.info.mk_atomic_region(*r1);
-            let lft2 = self.info.mk_atomic_region(*r2);
-
-            if let info::AtomicRegion::Universal(info::UniversalRegionKind::Local, _) = lft1 {
-                // this is a constraint we care about here, add it
-                if !self.inclusion_tracker.check_inclusion(*r1, *r2, root_point) {
-                    self.inclusion_tracker.add_static_inclusion(*r1, *r2, root_point);
-                    self.inclusion_tracker.add_static_inclusion(*r2, *r1, root_point);
-                    assert!(match lft2 {
-                        info::AtomicRegion::PlaceRegion(_) => true,
-                        _ => false,
-                    });
-                    initial_arg_mapping.push((lft1, lft2));
-                }
-            }
-        }
-        initial_arg_mapping
-    }
-
     /// Generate a key for generics to index into our map of other required procedures.
     fn generate_procedure_inst_key(
         &self,
diff --git a/rr_frontend/translation/src/lib.rs b/rr_frontend/translation/src/lib.rs
index f0fde0cceeb07203e10721defa489b0d8f321dbe..5a40c6a51c8fd57e2862402741b96c5e9493279b 100644
--- a/rr_frontend/translation/src/lib.rs
+++ b/rr_frontend/translation/src/lib.rs
@@ -980,14 +980,11 @@ fn register_functions(vcx: &mut VerificationCtxt<'_, '_>) -> Result<(), String>
 }
 
 fn propagate_attr_from_impl(it: &rustc_ast::ast::AttrItem) -> bool {
-    if let Some(ident) = it.path.segments.get(1) {
-        match ident.ident.as_str() {
-            "context" => true,
-            _ => false,
-        }
-    } else {
-        false
-    }
+    let Some(ident) = it.path.segments.get(1) else {
+        return false;
+    };
+
+    matches!(ident.ident.as_str(), "context")
 }
 
 fn get_attributes_of_function<'a>(env: &'a Environment, did: DefId) -> Vec<&'a rustc_ast::ast::AttrItem> {
diff --git a/rr_frontend/translation/src/type_translator.rs b/rr_frontend/translation/src/type_translator.rs
index 75abc297cc1edb0b8e061d0661811d15c9417970..30fa384f61cc23387062b2043c17fb5200f8638e 100644
--- a/rr_frontend/translation/src/type_translator.rs
+++ b/rr_frontend/translation/src/type_translator.rs
@@ -188,17 +188,11 @@ pub type TranslateAdtState<'a> = &'a mut HashSet<DefId>;
 
 impl<'a, 'def> TranslationStateInner<'a, 'def> {
     const fn in_function(&self) -> bool {
-        match *self {
-            Self::InFunction(_) => true,
-            _ => false,
-        }
+        matches!(*self, Self::InFunction(_))
     }
 
     const fn translate_adt(&self) -> bool {
-        match *self {
-            Self::TranslateAdt(_) => true,
-            _ => false,
-        }
+        matches!(*self, Self::TranslateAdt(_))
     }
 }