//@only-target-windows: Uses win32 api functions | |
//@error-in-other-file: Undefined Behavior: trying to join a detached thread | |
// Joining a detached thread is undefined behavior. | |
use std::os::windows::io::AsRawHandle; | |
use std::thread; | |
use windows_sys::Win32::Foundation::{CloseHandle, HANDLE}; | |
fn main() { | |
let thread = thread::spawn(|| ()); | |
unsafe { | |
assert_ne!(CloseHandle(thread.as_raw_handle() as HANDLE), 0); | |
} | |
thread.join().unwrap(); | |
} |