| //@ run-pass |
| //@ check-run-results |
| //@ only-gnu |
| //@ only-linux |
| // |
| // Regression test for #130210. |
| // .init_array doesn't work everywhere, so we limit the test to just GNU/Linux. |
| |
| use std::ffi::c_int; |
| use std::thread; |
| |
| #[used] |
| #[link_section = ".init_array"] |
| static INIT: extern "C" fn(c_int, *const *const u8, *const *const u8) = { |
| extern "C" fn init(_argc: c_int, _argv: *const *const u8, _envp: *const *const u8) { |
| print!("Hello from before "); |
| } |
| |
| init |
| }; |
| |
| fn main() { |
| println!("{}!", thread::current().name().unwrap()); |
| } |