add non-regression run-make test for issues 125474, 125484, and 125646

This commit is contained in:
Rémy Rakic 2024-05-29 09:29:16 +00:00
parent 0a4176a831
commit 9ddf5726f0
3 changed files with 28 additions and 0 deletions

View File

@ -0,0 +1 @@
// Empty

View File

@ -0,0 +1,9 @@
pub type Foo = something::same::Thing;
mod something {
pub mod same {
pub struct Thing;
}
}
fn main() {}

View File

@ -0,0 +1,18 @@
// Non-regression test for issues #125474, #125484, #125646, with the repro taken from #125484. Some
// queries use "used dependencies" while others use "speculatively loaded dependencies", and an
// indexing ICE appeared in some cases when these were unexpectedly used in the same context.
// FIXME: this should probably be a UI test instead of a run-make test, but I *cannot* find a way to
// make compiletest annotations reproduce the ICE with the minimizations from issues #125474 and
// #125484.
use run_make_support::{rustc, tmp_dir};
fn main() {
// The dependency is not itself significant, apart from sharing a name with one of main's
// modules.
rustc().crate_name("same").crate_type("rlib").input("dependency.rs").run();
// Here, an ICE would happen when building the linker command.
rustc().input("main.rs").extern_("same", tmp_dir().join("libsame.rlib")).run();
}