Rollup merge of #128603 - ChrisDenton:used, r=jieyouxu

Update run-make/used to use `any_symbol_contains`

This makes it so we don't need `nm` or `llvm-nm`.

I also tested that `BAR` is removed. I'm not sure if this is wanted though.
This commit is contained in:
Matthias Krüger 2024-08-03 20:51:54 +02:00 committed by GitHub
commit 0655ed234f
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 3 additions and 7 deletions

View File

@ -4,12 +4,10 @@
// It comes from #39987 which implements this RFC for the #[used] attribute: // It comes from #39987 which implements this RFC for the #[used] attribute:
// https://rust-lang.github.io/rfcs/2386-used.html // https://rust-lang.github.io/rfcs/2386-used.html
//@ ignore-msvc use run_make_support::rustc;
use run_make_support::symbols::any_symbol_contains;
use run_make_support::{cmd, rustc};
fn main() { fn main() {
rustc().opt_level("3").emit("obj").input("used.rs").run(); rustc().opt_level("3").emit("obj").input("used.rs").run();
assert!(any_symbol_contains("used.o", &["FOO"]));
cmd("nm").arg("used.o").run().assert_stdout_contains("FOO");
} }

View File

@ -2,5 +2,3 @@
#[used] #[used]
static FOO: u32 = 0; static FOO: u32 = 0;
static BAR: u32 = 0;