mirror of
https://github.com/rust-lang/rust.git
synced 2026-05-07 09:00:34 -04:00
793c646b7b
This is the subset of incremental tests that should continue to use `bpass` even after `cpass` is supported, because they (presumably) involve codegen.
27 lines
569 B
Rust
27 lines
569 B
Rust
//@ revisions: bpass1 bpass2
|
|
//@ ignore-backends: gcc
|
|
|
|
// rust-lang/rust#69798:
|
|
//
|
|
// This is analogous to cgu_invalidated_when_import_added, but it covers a
|
|
// problem uncovered where a change to the *export* set caused a link failure
|
|
// when reusing post-LTO optimized object code.
|
|
|
|
pub struct Foo {}
|
|
impl Drop for Foo {
|
|
fn drop(&mut self) {
|
|
println!("Dropping Foo");
|
|
}
|
|
}
|
|
#[no_mangle]
|
|
pub extern "C" fn run() {
|
|
thread_local! { pub static FOO : Foo = Foo { } ; }
|
|
|
|
#[cfg(bpass2)]
|
|
{
|
|
FOO.with(|_f| ())
|
|
}
|
|
}
|
|
|
|
pub fn main() { run() }
|