about summary refs log tree commit diff
path: root/src/test/ui/lint/issue-47390-unused-variable-in-struct-pattern.rs
diff options
context:
space:
mode:
authorTomasz Miąsko <tomasz.miasko@gmail.com>2019-11-06 00:00:00 +0000
committerTomasz Miąsko <tomasz.miasko@gmail.com>2019-11-10 21:01:02 +0100
commit427952e8088233576102a1cc32f67183d22e922b (patch)
tree80f687c95da6288d388dbe8b73f1d76cecab77d5 /src/test/ui/lint/issue-47390-unused-variable-in-struct-pattern.rs
parent70b146c2cb435880c8a1f05384611e6de50ec2a3 (diff)
downloadrust-427952e8088233576102a1cc32f67183d22e922b.tar.gz
rust-427952e8088233576102a1cc32f67183d22e922b.zip
Make error and warning annotations mandatory in UI tests
This change makes error and warning annotations mandatory in UI tests.
The only exception are tests that use error patterns to match compiler
output and don't have any annotations.
Diffstat (limited to 'src/test/ui/lint/issue-47390-unused-variable-in-struct-pattern.rs')
-rw-r--r--src/test/ui/lint/issue-47390-unused-variable-in-struct-pattern.rs27
1 files changed, 16 insertions, 11 deletions
diff --git a/src/test/ui/lint/issue-47390-unused-variable-in-struct-pattern.rs b/src/test/ui/lint/issue-47390-unused-variable-in-struct-pattern.rs
index e7614355455..0ad014e3361 100644
--- a/src/test/ui/lint/issue-47390-unused-variable-in-struct-pattern.rs
+++ b/src/test/ui/lint/issue-47390-unused-variable-in-struct-pattern.rs
@@ -23,7 +23,7 @@ enum Large {
 struct Tuple(Large, ());
 
 fn main() {
-    let i_think_continually = 2;
+    let i_think_continually = 2; //~ WARNING unused variable: `i_think_continually`
     let who_from_the_womb_remembered = SoulHistory {
         corridors_of_light: 5,
         hours_are_suns: true,
@@ -31,20 +31,25 @@ fn main() {
     };
 
     let mut mut_unused_var = 1;
+    //~^ WARNING unused variable: `mut_unused_var`
+    //~| WARNING variable does not need to be mutable
 
     let (mut var, unused_var) = (1, 2);
+    //~^ WARNING unused variable: `var`
+    //~| WARNING unused variable: `unused_var`
+    //~| WARNING variable does not need to be mutable
     // NOTE: `var` comes after `unused_var` lexicographically yet the warning
     // for `var` will be emitted before the one for `unused_var`. We use an
     // `IndexMap` to ensure this is the case instead of a `BTreeMap`.
 
-    if let SoulHistory { corridors_of_light,
-                         mut hours_are_suns,
+    if let SoulHistory { corridors_of_light, //~ WARNING unused variable: `corridors_of_light`
+                         mut hours_are_suns, //~ WARNING `hours_are_suns` is assigned to, but
                          endless_and_singing: true } = who_from_the_womb_remembered {
-        hours_are_suns = false;
+        hours_are_suns = false; //~ WARNING unused_assignments
     }
 
     let the_spirit = LovelyAmbition { lips: 1, fire: 2 };
-    let LovelyAmbition { lips, fire } = the_spirit;
+    let LovelyAmbition { lips, fire } = the_spirit; //~ WARNING unused variable: `fire`
     println!("{}", lips);
 
     let bag = Large::Suit {
@@ -53,31 +58,31 @@ fn main() {
 
     // Plain struct
     match bag {
-        Large::Suit { case } => {}
+        Large::Suit { case } => {} //~ WARNING unused variable: `case`
     };
 
     // Referenced struct
     match &bag {
-        &Large::Suit { case } => {}
+        &Large::Suit { case } => {} //~ WARNING unused variable: `case`
     };
 
     // Boxed struct
     match box bag {
-        box Large::Suit { case } => {}
+        box Large::Suit { case } => {} //~ WARNING unused variable: `case`
     };
 
     // Tuple with struct
     match (bag,) {
-        (Large::Suit { case },) => {}
+        (Large::Suit { case },) => {} //~ WARNING unused variable: `case`
     };
 
     // Slice with struct
     match [bag] {
-        [Large::Suit { case }] => {}
+        [Large::Suit { case }] => {} //~ WARNING unused variable: `case`
     };
 
     // Tuple struct with struct
     match Tuple(bag, ()) {
-        Tuple(Large::Suit { case }, ()) => {}
+        Tuple(Large::Suit { case }, ()) => {} //~ WARNING unused variable: `case`
     };
 }