From 2d95dfd5a93531996b41b210480accd0cb199b73 Mon Sep 17 00:00:00 2001 From: niacdoial Date: Mon, 6 Oct 2025 08:21:34 -0700 Subject: [PATCH] unused_must_use: Add extra test for types that are still generic --- .../unused/must_use-result-unit-uninhabited.rs | 8 ++++++++ .../unused/must_use-result-unit-uninhabited.stderr | 14 +++++++++++++- 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/tests/ui/lint/unused/must_use-result-unit-uninhabited.rs b/tests/ui/lint/unused/must_use-result-unit-uninhabited.rs index d0dd8d237209..8f63e4a7f832 100644 --- a/tests/ui/lint/unused/must_use-result-unit-uninhabited.rs +++ b/tests/ui/lint/unused/must_use-result-unit-uninhabited.rs @@ -91,3 +91,11 @@ fn main() { controlflow_infallible_unit(); controlflow_never(); } + +trait AssocTypeBeforeMonomorphisation { + type Error; + fn generate(&self) -> Result<(), Self::Error>; + fn process(&self) { + self.generate(); //~ ERROR: unused `Result` that must be used + } +} diff --git a/tests/ui/lint/unused/must_use-result-unit-uninhabited.stderr b/tests/ui/lint/unused/must_use-result-unit-uninhabited.stderr index 90ac44d0c6c6..31d6f6bcf2bc 100644 --- a/tests/ui/lint/unused/must_use-result-unit-uninhabited.stderr +++ b/tests/ui/lint/unused/must_use-result-unit-uninhabited.stderr @@ -62,5 +62,17 @@ help: use `let _ = ...` to ignore the resulting value LL | let _ = controlflow_unit(); | +++++++ -error: aborting due to 5 previous errors +error: unused `Result` that must be used + --> $DIR/must_use-result-unit-uninhabited.rs:99:9 + | +LL | self.generate(); + | ^^^^^^^^^^^^^^^ + | + = note: this `Result` may be an `Err` variant, which should be handled +help: use `let _ = ...` to ignore the resulting value + | +LL | let _ = self.generate(); + | +++++++ + +error: aborting due to 6 previous errors