Test RUSTC_OVERRIDE_VERSION_STRING

This commit is contained in:
Oli Scherer 2024-04-25 08:55:39 +00:00
parent a5ee5cbad1
commit cbab16feaf
2 changed files with 18 additions and 0 deletions

View File

@ -330,6 +330,7 @@ impl TestProps {
pub fn from_file(testfile: &Path, revision: Option<&str>, config: &Config) -> Self {
let mut props = TestProps::new();
props.load_from(testfile, revision, config);
props.exec_env.push(("RUSTC".to_string(), config.rustc_path.display().to_string()));
match (props.pass_mode, props.fail_mode) {
(None, None) if config.mode == Mode::Ui => props.fail_mode = Some(FailMode::Check),

View File

@ -0,0 +1,17 @@
//@ run-pass
//@ only-linux
//@ only-x86
// FIXME: this should be more like //@ needs-subprocesses
use std::process::Command;
fn main() {
let signalled_version = "Ceci n'est pas une rustc";
let version = Command::new(std::env::var_os("RUSTC").unwrap())
.env("RUSTC_OVERRIDE_VERSION_STRING", signalled_version)
.arg("--version")
.output()
.unwrap()
.stdout;
let version = std::str::from_utf8(&version).unwrap().strip_prefix("rustc ").unwrap().trim_end();
assert_ne!(version, signalled_version);
}