about summary refs log tree commit diff
diff options
context:
space:
mode:
authorSamuel Tardieu <sam@rfc1149.net>2024-11-30 19:47:50 +0100
committerSamuel Tardieu <sam@rfc1149.net>2024-11-30 19:53:36 +0100
commit484c561d78e3bb4f9e4ec6553303546efbb4ff38 (patch)
tree565eb829af3932d65aa661a01b15c7065a2720b1
parente48ddd8a0bbd1769587017f04c518d686ea3b206 (diff)
downloadrust-484c561d78e3bb4f9e4ec6553303546efbb4ff38.tar.gz
rust-484c561d78e3bb4f9e4ec6553303546efbb4ff38.zip
Add diagnostic item for `std::ops::ControlFlow`
This will be used in Clippy to detect useless conversions done through
`ControlFlow::map_break()` and `ControlFlow::map_continue()`.
-rw-r--r--compiler/rustc_span/src/symbol.rs1
-rw-r--r--library/core/src/ops/control_flow.rs1
2 files changed, 2 insertions, 0 deletions
diff --git a/compiler/rustc_span/src/symbol.rs b/compiler/rustc_span/src/symbol.rs
index 3a07c283e0e..c7fd677f794 100644
--- a/compiler/rustc_span/src/symbol.rs
+++ b/compiler/rustc_span/src/symbol.rs
@@ -182,6 +182,7 @@ symbols! {
         ConstParamTy_,
         Context,
         Continue,
+        ControlFlow,
         Copy,
         Cow,
         Debug,
diff --git a/library/core/src/ops/control_flow.rs b/library/core/src/ops/control_flow.rs
index 55deabbee8f..c4429b3cd7d 100644
--- a/library/core/src/ops/control_flow.rs
+++ b/library/core/src/ops/control_flow.rs
@@ -79,6 +79,7 @@ use crate::{convert, ops};
 /// [`Break`]: ControlFlow::Break
 /// [`Continue`]: ControlFlow::Continue
 #[stable(feature = "control_flow_enum_type", since = "1.55.0")]
+#[cfg_attr(not(test), rustc_diagnostic_item = "ControlFlow")]
 // ControlFlow should not implement PartialOrd or Ord, per RFC 3058:
 // https://rust-lang.github.io/rfcs/3058-try-trait-v2.html#traits-for-controlflow
 #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]