Skip to content

Commit

Permalink
add non-regression run-make test for issues 125474, 125484, and 125646
Browse files Browse the repository at this point in the history
  • Loading branch information
lqd committed Jun 6, 2024
1 parent 0a4176a commit 9ddf572
Show file tree
Hide file tree
Showing 3 changed files with 28 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
// Empty
9 changes: 9 additions & 0 deletions tests/run-make/issue-125484-used-dependencies/main.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
pub type Foo = something::same::Thing;

mod something {
pub mod same {
pub struct Thing;
}
}

fn main() {}
18 changes: 18 additions & 0 deletions tests/run-make/issue-125484-used-dependencies/rmake.rs
Original file line number Diff line number Diff line change
@@ -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();
}

0 comments on commit 9ddf572

Please sign in to comment.