about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorvarkor <github@varkor.com>2019-05-23 22:56:31 +0100
committervarkor <github@varkor.com>2019-06-03 18:19:29 +0100
commitfd36b5fd52003d3c3b246c8fb9fb669c5f0f68b0 (patch)
treec96cd63fede46a301513fb6bec373f6fcf2b089d /src
parentbbac81a0f11c21eb09344a1d9277393ffdba474e (diff)
downloadrust-fd36b5fd52003d3c3b246c8fb9fb669c5f0f68b0.tar.gz
rust-fd36b5fd52003d3c3b246c8fb9fb669c5f0f68b0.zip
Add test for #[must_use] in tuples
Diffstat (limited to 'src')
-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
+