diff options
| author | bors <bors@rust-lang.org> | 2014-05-30 21:21:39 -0700 | 
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2014-05-30 21:21:39 -0700 | 
| commit | 60a43f9bc5d24b47aae9681fc7ef47d517329e59 (patch) | |
| tree | c0e46f35c6d6482996e6b10eaf635201b51e82d4 /src/libstd/rt/stack.rs | |
| parent | cc4513202d6f9c6896054ebaa1d99230b06e9f10 (diff) | |
| parent | bb96ee6123082908dba86cb22344f0c23915bf06 (diff) | |
| download | rust-60a43f9bc5d24b47aae9681fc7ef47d517329e59.tar.gz rust-60a43f9bc5d24b47aae9681fc7ef47d517329e59.zip | |
auto merge of #14534 : alexcrichton/rust/snapshots, r=sfackler
This is part 2 of the saga of renaming the Partial/Total equality and comparison traits.
Diffstat (limited to 'src/libstd/rt/stack.rs')
| -rw-r--r-- | src/libstd/rt/stack.rs | 31 | 
1 files changed, 1 insertions, 30 deletions
| diff --git a/src/libstd/rt/stack.rs b/src/libstd/rt/stack.rs index b3be742e1ed..dc6ab494d64 100644 --- a/src/libstd/rt/stack.rs +++ b/src/libstd/rt/stack.rs @@ -30,7 +30,7 @@ pub static RED_ZONE: uint = 20 * 1024; /// stacks are currently not enabled as segmented stacks, but rather one giant /// stack segment. This means that whenever we run out of stack, we want to /// truly consider it to be stack overflow rather than allocating a new stack. -#[cfg(not(test), not(stage0))] // in testing, use the original libstd's version +#[cfg(not(test))] // in testing, use the original libstd's version #[lang = "stack_exhausted"] extern fn stack_exhausted() { use option::{Option, None, Some}; @@ -103,35 +103,6 @@ extern fn stack_exhausted() { } } -#[no_mangle] // - this is called from C code -#[no_split_stack] // - it would be sad for this function to trigger __morestack -#[doc(hidden)] // - Function must be `pub` to get exported, but it's - // irrelevant for documentation purposes. -#[cfg(stage0, not(test))] // in testing, use the original libstd's version -pub extern "C" fn rust_stack_exhausted() { - use option::{Option, None, Some}; - use owned::Box; - use rt::local::Local; - use rt::task::Task; - use str::Str; - use intrinsics; - - unsafe { - let limit = get_sp_limit(); - record_sp_limit(limit - RED_ZONE / 2); - let task: Option<Box<Task>> = Local::try_take(); - let name = match task { - Some(ref task) => { - task.name.as_ref().map(|n| n.as_slice()) - } - None => None - }; - let name = name.unwrap_or("<unknown>"); - rterrln!("task '{}' has overflowed its stack", name); - intrinsics::abort(); - } -} - #[inline(always)] pub unsafe fn record_stack_bounds(stack_lo: uint, stack_hi: uint) { // When the old runtime had segmented stacks, it used a calculation that was | 
