about summary refs log tree commit diff
path: root/compiler/rustc_pattern_analysis/src/lib.rs
diff options
context:
space:
mode:
authordianne <diannes.gm@gmail.com>2025-07-04 21:53:03 -0700
committerdianne <diannes.gm@gmail.com>2025-07-04 23:47:31 -0700
commitbb643159786c789c0b64f819d36a0979c63f9791 (patch)
tree5425926c3529f74b57a549e749ca345e68eef482 /compiler/rustc_pattern_analysis/src/lib.rs
parent50061f3b11f51d7a6e3acd8ce793a1f17f99b597 (diff)
downloadrust-bb643159786c789c0b64f819d36a0979c63f9791.tar.gz
rust-bb643159786c789c0b64f819d36a0979c63f9791.zip
only check for mixed deref/normal constructors when needed
Diffstat (limited to 'compiler/rustc_pattern_analysis/src/lib.rs')
-rw-r--r--compiler/rustc_pattern_analysis/src/lib.rs5
1 files changed, 5 insertions, 0 deletions
diff --git a/compiler/rustc_pattern_analysis/src/lib.rs b/compiler/rustc_pattern_analysis/src/lib.rs
index 129fd38725c..66df35f9ee4 100644
--- a/compiler/rustc_pattern_analysis/src/lib.rs
+++ b/compiler/rustc_pattern_analysis/src/lib.rs
@@ -109,6 +109,11 @@ pub trait PatCx: Sized + fmt::Debug {
     ) {
     }
 
+    /// Check if we may need to perform additional deref-pattern-specific validation.
+    fn match_may_contain_deref_pats(&self) -> bool {
+        true
+    }
+
     /// The current implementation of deref patterns requires that they can't match on the same
     /// place as a normal constructor. Since this isn't caught by type-checking, we check it in the
     /// `PatCx` before running the analysis. This reports an error if the check fails.