about summary refs log tree commit diff
path: root/src/tools/clippy/tests/ui/redundant_allocation.rs
diff options
context:
space:
mode:
authorOliver Scherer <github35764891676564198441@oli-obk.de>2020-05-02 09:49:00 +0200
committerOliver Scherer <github35764891676564198441@oli-obk.de>2020-05-02 09:49:00 +0200
commitbce9fae97abb255c9fc6c994f50a052be4010a6f (patch)
treed88048931c569432e321c522d34795966c1c6647 /src/tools/clippy/tests/ui/redundant_allocation.rs
parent06c44816c1532e5ff08ad072f581fc068eb60e2e (diff)
parentd2708873ef711ec8ab45df1e984ecf24a96cd369 (diff)
downloadrust-bce9fae97abb255c9fc6c994f50a052be4010a6f.tar.gz
rust-bce9fae97abb255c9fc6c994f50a052be4010a6f.zip
Add 'src/tools/clippy/' from commit 'd2708873ef711ec8ab45df1e984ecf24a96cd369'
git-subtree-dir: src/tools/clippy
git-subtree-mainline: 06c44816c1532e5ff08ad072f581fc068eb60e2e
git-subtree-split: d2708873ef711ec8ab45df1e984ecf24a96cd369
Diffstat (limited to 'src/tools/clippy/tests/ui/redundant_allocation.rs')
-rw-r--r--src/tools/clippy/tests/ui/redundant_allocation.rs48
1 files changed, 48 insertions, 0 deletions
diff --git a/src/tools/clippy/tests/ui/redundant_allocation.rs b/src/tools/clippy/tests/ui/redundant_allocation.rs
new file mode 100644
index 00000000000..677b3e56d4d
--- /dev/null
+++ b/src/tools/clippy/tests/ui/redundant_allocation.rs
@@ -0,0 +1,48 @@
+// run-rustfix
+#![warn(clippy::all)]
+#![allow(clippy::boxed_local, clippy::needless_pass_by_value)]
+#![allow(clippy::blacklisted_name, unused_variables, dead_code)]
+
+use std::boxed::Box;
+use std::rc::Rc;
+
+pub struct MyStruct {}
+
+pub struct SubT<T> {
+    foo: T,
+}
+
+pub enum MyEnum {
+    One,
+    Two,
+}
+
+// Rc<&T>
+
+pub fn test1<T>(foo: Rc<&T>) {}
+
+pub fn test2(foo: Rc<&MyStruct>) {}
+
+pub fn test3(foo: Rc<&MyEnum>) {}
+
+pub fn test4_neg(foo: Rc<SubT<&usize>>) {}
+
+// Rc<Rc<T>>
+
+pub fn test5(a: Rc<Rc<bool>>) {}
+
+// Rc<Box<T>>
+
+pub fn test6(a: Rc<Box<bool>>) {}
+
+// Box<&T>
+
+pub fn test7<T>(foo: Box<&T>) {}
+
+pub fn test8(foo: Box<&MyStruct>) {}
+
+pub fn test9(foo: Box<&MyEnum>) {}
+
+pub fn test10_neg(foo: Box<SubT<&usize>>) {}
+
+fn main() {}