mirror of
https://github.com/rust-lang/rust.git
synced 2026-05-17 05:25:37 +03:00
Tests.
Namely, a regression test for issue #69798 (export added), and the inverse of that test (export removd).
This commit is contained in:
@@ -0,0 +1,26 @@
|
||||
// revisions: cfail1 cfail2
|
||||
// build-pass
|
||||
|
||||
// rust-lang/rust#69798:
|
||||
//
|
||||
// This is analgous 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(cfail2)]
|
||||
{
|
||||
FOO.with(|_f| ())
|
||||
}
|
||||
}
|
||||
|
||||
pub fn main() { run() }
|
||||
@@ -0,0 +1,26 @@
|
||||
// revisions: cfail1 cfail2
|
||||
// build-pass
|
||||
|
||||
// rust-lang/rust#69798:
|
||||
//
|
||||
// This is analgous to cgu_invalidated_when_export_added, but it covers the
|
||||
// other direction. This is analogous to cgu_invalidated_when_import_added: we
|
||||
// include it, because it may uncover bugs in variant implementation strategies.
|
||||
|
||||
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(cfail1)]
|
||||
{
|
||||
FOO.with(|_f| ())
|
||||
}
|
||||
}
|
||||
|
||||
pub fn main() { run() }
|
||||
Reference in New Issue
Block a user