about summary refs log tree commit diff
path: root/tests/ui/macros/macro-variable-unused-reporting-5718.rs
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2025-08-29 16:21:11 +0000
committerbors <bors@rust-lang.org>2025-08-29 16:21:11 +0000
commitfe55364329579d361b1ab565728bc033a7dba07e (patch)
treea2dc4bbf41193de24388655ac6751d11b5876e10 /tests/ui/macros/macro-variable-unused-reporting-5718.rs
parentdb3fd4708c3916bbc59b81ff7d3f6e19d11820c7 (diff)
parent197cb260e40aeae1f7569bc008a0aa3e11a12484 (diff)
downloadrust-fe55364329579d361b1ab565728bc033a7dba07e.tar.gz
rust-fe55364329579d361b1ab565728bc033a7dba07e.zip
Auto merge of #145997 - matthiaskrgr:rollup-tsgylre, r=matthiaskrgr
Rollup of 4 pull requests

Successful merges:

 - rust-lang/rust#145675 (Rehome 30 `tests/ui/issues/` tests to other subdirectories under `tests/ui/` [rust-lang/rust#1 of Batch rust-lang/rust#2])
 - rust-lang/rust#145676 (Rehome 30 `tests/ui/issues/` tests to other subdirectories under `tests/ui/` [rust-lang/rust#2 of Batch rust-lang/rust#2])
 - rust-lang/rust#145982 (compiletest: Reduce the number of `println!` calls that don't have access to `TestCx`)
 - rust-lang/rust#145984 (`TokenStream` cleanups)

r? `@ghost`
`@rustbot` modify labels: rollup
Diffstat (limited to 'tests/ui/macros/macro-variable-unused-reporting-5718.rs')
-rw-r--r--tests/ui/macros/macro-variable-unused-reporting-5718.rs24
1 files changed, 24 insertions, 0 deletions
diff --git a/tests/ui/macros/macro-variable-unused-reporting-5718.rs b/tests/ui/macros/macro-variable-unused-reporting-5718.rs
new file mode 100644
index 00000000000..55da925461d
--- /dev/null
+++ b/tests/ui/macros/macro-variable-unused-reporting-5718.rs
@@ -0,0 +1,24 @@
+// https://github.com/rust-lang/rust/issues/5718
+//@ run-pass
+
+struct Element;
+
+macro_rules! foo {
+    ($tag: expr, $string: expr) => {
+        if $tag == $string {
+            let element: Box<_> = Box::new(Element);
+            unsafe {
+                return std::mem::transmute::<_, usize>(element);
+            }
+        }
+    }
+}
+
+fn bar() -> usize {
+    foo!("a", "b");
+    0
+}
+
+fn main() {
+    bar();
+}