Skip to content

Commit 970baad

Browse files
committed
std: Clean up the sys::thread modules
This module had become a #[cfg] jungle, try to bring at least a small semblance of order to it!
1 parent 95018ee commit 970baad

File tree

3 files changed

+148
-221
lines changed

3 files changed

+148
-221
lines changed

src/libstd/sys/common/thread.rs

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -8,28 +8,23 @@
88
// option. This file may not be copied, modified, or distributed
99
// except according to those terms.
1010

11-
use core::prelude::*;
11+
use prelude::v1::*;
1212

13-
use boxed::Box;
14-
use mem;
1513
use usize;
1614
use libc;
1715
use thunk::Thunk;
1816
use sys_common::stack;
19-
use sys::{thread, stack_overflow};
17+
use sys::stack_overflow;
2018

2119
// This is the starting point of rust os threads. The first thing we do
2220
// is make sure that we don't trigger __morestack (also why this has a
2321
// no_stack_check annotation), and then we extract the main function
2422
// and invoke it.
2523
#[no_stack_check]
26-
pub fn start_thread(main: *mut libc::c_void) -> thread::rust_thread_return {
24+
pub fn start_thread(main: *mut libc::c_void) {
2725
unsafe {
2826
stack::record_os_managed_stack_bounds(0, usize::MAX);
29-
let handler = stack_overflow::Handler::new();
30-
let f: Box<Thunk> = Box::from_raw(main as *mut Thunk);
31-
f.invoke(());
32-
drop(handler);
33-
mem::transmute(0 as thread::rust_thread_return)
27+
let _handler = stack_overflow::Handler::new();
28+
Box::from_raw(main as *mut Thunk).invoke(());
3429
}
3530
}

0 commit comments

Comments
 (0)