add regression test

This commit is contained in:
Ralf Jung 2021-12-15 18:41:41 +01:00
parent 65cbcb0d05
commit d8f7b831e7
3 changed files with 22 additions and 2 deletions

View File

@ -1 +1 @@
404c8471aba60c2d837fa728e7c729a0f52d5830
c5ecc157043ba413568b09292001a4a74b541a4e

View File

@ -176,7 +176,7 @@ fn lookup_exported_symbol(
if let Some((original_instance, original_cnum)) = instance_and_crate {
// Make sure we are consistent wrt what is 'first' and 'second'.
let original_span = tcx.def_span(original_instance.def_id()).data();
let span = tcx.def_span(def_id).data();
let span = tcx.def_span(def_id).data();
if original_span < span {
throw_machine_stop!(TerminationInfo::MultipleSymbolDefinitions {
link_name,

View File

@ -0,0 +1,20 @@
type BuiltIn = for<'a> fn(&str);
struct Function {
inner: BuiltIn,
}
impl Function {
fn new(subr: BuiltIn) -> Self {
Self { inner: subr }
}
}
fn dummy(_: &str) {}
fn main() {
let func1 = Function::new(dummy);
let func2 = Function::new(dummy);
let inner: fn(&'static _) -> _ = func1.inner;
assert!(inner == func2.inner);
}