about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--src/librustc_lint/unused.rs4
-rw-r--r--src/test/ui/lint/must_use-tuple.rs5
-rw-r--r--src/test/ui/lint/must_use-tuple.stderr15
3 files changed, 22 insertions, 2 deletions
diff --git a/src/librustc_lint/unused.rs b/src/librustc_lint/unused.rs
index a765c0436a8..67ea41e1bed 100644
--- a/src/librustc_lint/unused.rs
+++ b/src/librustc_lint/unused.rs
@@ -1,7 +1,7 @@
 use rustc::hir::def::{Res, DefKind};
 use rustc::hir::def_id::DefId;
 use rustc::lint;
-use rustc::ty;
+use rustc::ty::{self, Ty};
 use rustc::ty::adjustment;
 use rustc_data_structures::fx::FxHashMap;
 use lint::{LateContext, EarlyContext, LintContext, LintArray};
@@ -137,7 +137,7 @@ impl<'a, 'tcx> LateLintPass<'a, 'tcx> for UnusedResults {
         // Returns whether an error has been emitted (and thus another does not need to be later).
         fn check_must_use_ty(
             cx: &LateContext<'_, '_>,
-            ty: ty::Ty<'_>,
+            ty: Ty<'_>,
             span: Span,
         ) -> bool {
             match ty.sty {
diff --git a/src/test/ui/lint/must_use-tuple.rs b/src/test/ui/lint/must_use-tuple.rs
new file mode 100644
index 00000000000..bc972d7ffc3
--- /dev/null
+++ b/src/test/ui/lint/must_use-tuple.rs
@@ -0,0 +1,5 @@
+#![deny(unused_must_use)]
+
+fn main() {
+    (Ok::<(), ()>(()),); //~ ERROR unused `std::result::Result` that must be used
+}
diff --git a/src/test/ui/lint/must_use-tuple.stderr b/src/test/ui/lint/must_use-tuple.stderr
new file mode 100644
index 00000000000..67d1ec01966
--- /dev/null
+++ b/src/test/ui/lint/must_use-tuple.stderr
@@ -0,0 +1,15 @@
+error: unused `std::result::Result` that must be used
+  --> $DIR/must_use-tuple.rs:4:5
+   |
+LL |     (Ok::<(), ()>(()),);
+   |     ^^^^^^^^^^^^^^^^^^^^
+   |
+note: lint level defined here
+  --> $DIR/must_use-tuple.rs:1:9
+   |
+LL | #![deny(unused_must_use)]
+   |         ^^^^^^^^^^^^^^^
+   = note: this `Result` may be an `Err` variant, which should be handled
+
+error: aborting due to previous error
+