blob: ba28316b0bf0534749c3edb2448bfcab2dc2be9c [file] [log] [blame]
//@ build-pass
// This test is the same code as in ui/symbol-names/issue-60925.rs but this checks that the
// reproduction compiles successfully and doesn't segfault, whereas that test just checks that the
// symbol mangling fix produces the correct result.
fn dummy() {}
mod llvm {
pub(crate) struct Foo;
}
mod foo {
pub(crate) struct Foo<T>(T);
impl Foo<crate::llvm::Foo> {
pub(crate) fn foo() {
for _ in 0..0 {
for _ in &[crate::dummy()] {
crate::dummy();
crate::dummy();
crate::dummy();
}
}
}
}
pub(crate) fn foo() {
Foo::foo();
Foo::foo();
}
}
pub fn foo() {
foo::foo();
}
fn main() {}