Skip to content

Commit d8f7b83

Browse files
committed
add regression test
1 parent 65cbcb0 commit d8f7b83

File tree

3 files changed

+22
-2
lines changed

3 files changed

+22
-2
lines changed

rust-version

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
404c8471aba60c2d837fa728e7c729a0f52d5830
1+
c5ecc157043ba413568b09292001a4a74b541a4e

src/shims/foreign_items.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -176,7 +176,7 @@ pub trait EvalContextExt<'mir, 'tcx: 'mir>: crate::MiriEvalContextExt<'mir, 'tcx
176176
if let Some((original_instance, original_cnum)) = instance_and_crate {
177177
// Make sure we are consistent wrt what is 'first' and 'second'.
178178
let original_span = tcx.def_span(original_instance.def_id()).data();
179-
let span = tcx.def_span(def_id).data();
179+
let span = tcx.def_span(def_id).data();
180180
if original_span < span {
181181
throw_machine_stop!(TerminationInfo::MultipleSymbolDefinitions {
182182
link_name,

tests/run-pass/issue-91636.rs

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
type BuiltIn = for<'a> fn(&str);
2+
3+
struct Function {
4+
inner: BuiltIn,
5+
}
6+
7+
impl Function {
8+
fn new(subr: BuiltIn) -> Self {
9+
Self { inner: subr }
10+
}
11+
}
12+
13+
fn dummy(_: &str) {}
14+
15+
fn main() {
16+
let func1 = Function::new(dummy);
17+
let func2 = Function::new(dummy);
18+
let inner: fn(&'static _) -> _ = func1.inner;
19+
assert!(inner == func2.inner);
20+
}

0 commit comments

Comments
 (0)