// Checks the `debuginfo-compression` option. //@ only-linux //@ ignore-cross-compile // FIXME: This test isn't comprehensive and isn't covering all possible combinations. use run_make_support::{assert_contains, llvm_readobj, run_in_tmpdir, rustc}; fn check_compression(compression: &str, to_find: &str) { run_in_tmpdir(|| { let out = rustc() .crate_name("foo") .crate_type("lib") .emit("obj") .arg("-Cdebuginfo=full") .arg(&format!("-Zdebuginfo-compression={compression}")) .input("foo.rs") .run(); let stderr = out.stderr_utf8(); if stderr.is_empty() { llvm_readobj().arg("-t").arg("foo.o").run().assert_stdout_contains(to_find); } else { assert_contains( stderr, format!("unknown debuginfo compression algorithm {compression}"), ); } }); } fn main() { check_compression("zlib", "ZLIB"); check_compression("zstd", "ZSTD"); }