about summary refs log tree commit diff
path: root/tests/ui
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2022-04-06 08:27:03 +0000
committerbors <bors@rust-lang.org>2022-04-06 08:27:03 +0000
commit880ff2497d723bc8bf64a7304c0011bc25bef5b0 (patch)
tree03dde27c4a442c9babbbf23d5eaca6a6d8edcd21 /tests/ui
parent41f2eccf92c54337b727d891e42ba66105c56d0d (diff)
parentec851b870b59848bdbf531928a7cf38225d3a12e (diff)
downloadrust-880ff2497d723bc8bf64a7304c0011bc25bef5b0.tar.gz
rust-880ff2497d723bc8bf64a7304c0011bc25bef5b0.zip
Auto merge of #8596 - Jaic1:unnecessary_cast, r=flip1995
Fix unnecessary_cast suggestion for type aliasses

Fix #6923. The [`unnecessary_cast`] lint now will skip casting to non-primitive type.

changelog: fix lint [`unnecessary_cast `]
Diffstat (limited to 'tests/ui')
-rw-r--r--tests/ui/unnecessary_cast.rs6
-rw-r--r--tests/ui/unnecessary_cast_fixable.fixed5
-rw-r--r--tests/ui/unnecessary_cast_fixable.rs5
3 files changed, 16 insertions, 0 deletions
diff --git a/tests/ui/unnecessary_cast.rs b/tests/ui/unnecessary_cast.rs
index b77c19f2ba5..62c3e963686 100644
--- a/tests/ui/unnecessary_cast.rs
+++ b/tests/ui/unnecessary_cast.rs
@@ -30,4 +30,10 @@ fn main() {
 
     // do not lint cast to cfg-dependant type
     1 as std::os::raw::c_char;
+
+    // do not lint cast to alias type
+    1 as I32Alias;
+    &1 as &I32Alias;
 }
+
+type I32Alias = i32;
diff --git a/tests/ui/unnecessary_cast_fixable.fixed b/tests/ui/unnecessary_cast_fixable.fixed
index 3332f49c80c..36800c5340d 100644
--- a/tests/ui/unnecessary_cast_fixable.fixed
+++ b/tests/ui/unnecessary_cast_fixable.fixed
@@ -42,4 +42,9 @@ fn main() {
 
     let _ = -1_i32;
     let _ = -1.0_f32;
+
+    let _ = 1 as I32Alias;
+    let _ = &1 as &I32Alias;
 }
+
+type I32Alias = i32;
diff --git a/tests/ui/unnecessary_cast_fixable.rs b/tests/ui/unnecessary_cast_fixable.rs
index ec01e938779..d4b6bb952ab 100644
--- a/tests/ui/unnecessary_cast_fixable.rs
+++ b/tests/ui/unnecessary_cast_fixable.rs
@@ -42,4 +42,9 @@ fn main() {
 
     let _ = -1 as i32;
     let _ = -1.0 as f32;
+
+    let _ = 1 as I32Alias;
+    let _ = &1 as &I32Alias;
 }
+
+type I32Alias = i32;