mirror of
https://github.com/rust-lang/rust.git
synced 2026-06-03 01:16:14 +03:00
Remove old runtime panic test
This test has an interesting history, because of fail -> panic. It was originally called extern-fail.rs: https://github.com/rust-lang/rust/commits/master/src/test/run-fail/extern-fail.rs It lived for a while, but was disabled in August 2013: https://github.com/rust-lang/rust/commit/ce95b01014391f29a655d165d9e6d31449ceb835 As you can see, that failure was not specific to this test, however, this code does stuff with the runtime, which was removed. Given that it hasn't even been able to compile in a long time, we should just remove it.
This commit is contained in:
@@ -1,52 +0,0 @@
|
||||
// Copyright 2012-2014 The Rust Project Developers. See the COPYRIGHT
|
||||
// file at the top-level directory of this distribution and at
|
||||
// http://rust-lang.org/COPYRIGHT.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
|
||||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
// ignore-test linked failure
|
||||
// error-pattern:explicit failure
|
||||
// Testing that runtime failure doesn't cause callbacks to abort abnormally.
|
||||
// Instead the failure will be delivered after the callbacks return.
|
||||
#![feature(std_misc, libc)]
|
||||
|
||||
extern crate libc;
|
||||
use std::task;
|
||||
|
||||
mod rustrt {
|
||||
extern crate libc;
|
||||
|
||||
extern {
|
||||
pub fn rust_dbg_call(cb: *u8, data: libc::uintptr_t)
|
||||
-> libc::uintptr_t;
|
||||
}
|
||||
}
|
||||
|
||||
extern fn cb(data: libc::uintptr_t) -> libc::uintptr_t {
|
||||
if data == 1 {
|
||||
data
|
||||
} else {
|
||||
count(data - 1) + count(data - 1)
|
||||
}
|
||||
}
|
||||
|
||||
fn count(n: usize) -> usize {
|
||||
unsafe {
|
||||
task::deschedule();
|
||||
rustrt::rust_dbg_call(cb, n)
|
||||
}
|
||||
}
|
||||
|
||||
fn main() {
|
||||
for _ in 0..10 {
|
||||
task::spawn(move|| {
|
||||
let result = count(5);
|
||||
println!("result = %?", result);
|
||||
panic!();
|
||||
});
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user