diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-17 12:19:13 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-17 12:19:13 +0000 |
commit | 218caa410aa38c29984be31a5229b9fa717560ee (patch) | |
tree | c54bd55eeb6e4c508940a30e94c0032fbd45d677 /src/test/run-make-fulldeps/issue-19371/foo.rs | |
parent | Releasing progress-linux version 1.67.1+dfsg1-1~progress7.99u1. (diff) | |
download | rustc-218caa410aa38c29984be31a5229b9fa717560ee.tar.xz rustc-218caa410aa38c29984be31a5229b9fa717560ee.zip |
Merging upstream version 1.68.2+dfsg1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/test/run-make-fulldeps/issue-19371/foo.rs')
-rw-r--r-- | src/test/run-make-fulldeps/issue-19371/foo.rs | 74 |
1 files changed, 0 insertions, 74 deletions
diff --git a/src/test/run-make-fulldeps/issue-19371/foo.rs b/src/test/run-make-fulldeps/issue-19371/foo.rs deleted file mode 100644 index 7e1b6aeb3..000000000 --- a/src/test/run-make-fulldeps/issue-19371/foo.rs +++ /dev/null @@ -1,74 +0,0 @@ -#![feature(rustc_private)] - -extern crate rustc_interface; -extern crate rustc_driver; -extern crate rustc_session; -extern crate rustc_span; - -use rustc_session::config::{Input, Options, OutputType, OutputTypes}; -use rustc_interface::interface; -use rustc_span::source_map::FileName; - -use std::path::PathBuf; - -fn main() { - let src = r#" - fn main() {} - "#; - - let args: Vec<String> = std::env::args().collect(); - - if args.len() < 4 { - panic!("expected rustc path"); - } - - let tmpdir = PathBuf::from(&args[1]); - - let mut sysroot = PathBuf::from(&args[3]); - sysroot.pop(); - sysroot.pop(); - - compile(src.to_string(), tmpdir.join("out"), sysroot.clone()); - - compile(src.to_string(), tmpdir.join("out"), sysroot.clone()); -} - -fn compile(code: String, output: PathBuf, sysroot: PathBuf) { - let mut opts = Options::default(); - opts.output_types = OutputTypes::new(&[(OutputType::Exe, None)]); - opts.maybe_sysroot = Some(sysroot); - - if let Ok(linker) = std::env::var("RUSTC_LINKER") { - opts.cg.linker = Some(linker.into()); - } - - let name = FileName::anon_source_code(&code); - let input = Input::Str { name, input: code }; - - let config = interface::Config { - opts, - crate_cfg: Default::default(), - crate_check_cfg: Default::default(), - input, - input_path: None, - output_file: Some(output), - output_dir: None, - file_loader: None, - lint_caps: Default::default(), - parse_sess_created: None, - register_lints: None, - override_queries: None, - make_codegen_backend: None, - registry: rustc_driver::diagnostics_registry(), - }; - - interface::run_compiler(config, |compiler| { - // This runs all the passes prior to linking, too. - let linker = compiler.enter(|queries| { - queries.linker() - }); - if let Ok(linker) = linker { - linker.link(); - } - }); -} |