Fix UI tests with dist-vendored dependencies
There is already a workaround in `compiletest` to deal with custom `CARGO_HOME` using `-Zignore-directory-in-diagnostics-source-blocks={}`. A similar need exists when dependencies come from the local `vendor` directory, which distro builds often use, so now we ignore that too. Also, `issue-21763.rs` was normalizing `hashbrown-` paths, presumably expecting a version suffix, but the vendored path doesn't include the version. Now that matches `[\\/]hashbrown` instead.
This commit is contained in:
parent
211518e5fb
commit
f7b2e37f72
@ -2354,6 +2354,11 @@ fn make_compile_args(
|
||||
"ignore-directory-in-diagnostics-source-blocks={}",
|
||||
home::cargo_home().expect("failed to find cargo home").to_str().unwrap()
|
||||
));
|
||||
// Similarly, vendored sources shouldn't be shown when running from a dist tarball.
|
||||
rustc.arg("-Z").arg(format!(
|
||||
"ignore-directory-in-diagnostics-source-blocks={}",
|
||||
self.config.find_rust_src_root().unwrap().join("vendor").display(),
|
||||
));
|
||||
|
||||
// Optionally prevent default --sysroot if specified in test compile-flags.
|
||||
if !self.props.compile_flags.iter().any(|flag| flag.starts_with("--sysroot"))
|
||||
|
@ -1,6 +1,6 @@
|
||||
// Regression test for HashMap only impl'ing Send/Sync if its contents do
|
||||
|
||||
//@ normalize-stderr-test: "\S+hashbrown-\S+" -> "$$HASHBROWN_SRC_LOCATION"
|
||||
//@ normalize-stderr-test: "\S+[\\/]hashbrown\S+" -> "$$HASHBROWN_SRC_LOCATION"
|
||||
|
||||
use std::collections::HashMap;
|
||||
use std::rc::Rc;
|
||||
|
Loading…
Reference in New Issue
Block a user