summaryrefslogtreecommitdiffstats
path: root/src/tools/clippy/tests/ui/mem_replace_macro.rs
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/tools/clippy/tests/ui/mem_replace_macro.rs21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/tools/clippy/tests/ui/mem_replace_macro.rs b/src/tools/clippy/tests/ui/mem_replace_macro.rs
new file mode 100644
index 000000000..0c09344b8
--- /dev/null
+++ b/src/tools/clippy/tests/ui/mem_replace_macro.rs
@@ -0,0 +1,21 @@
+// aux-build:macro_rules.rs
+#![warn(clippy::mem_replace_with_default)]
+
+#[macro_use]
+extern crate macro_rules;
+
+macro_rules! take {
+ ($s:expr) => {
+ std::mem::replace($s, Default::default())
+ };
+}
+
+fn replace_with_default() {
+ let s = &mut String::from("foo");
+ take!(s);
+ take_external!(s);
+}
+
+fn main() {
+ replace_with_default();
+}