Fix issue-506.rs by adding a void-returning stub in the runtime (close #2957)
This commit is contained in:
parent
f188d92dfe
commit
a076c287de
3 changed files with 5 additions and 4 deletions
|
@ -797,6 +797,8 @@ rust_dbg_call(dbg_callback cb, void *data) {
|
|||
return cb(data);
|
||||
}
|
||||
|
||||
extern "C" CDECL void rust_dbg_do_nothing() { }
|
||||
|
||||
extern "C" CDECL void
|
||||
rust_dbg_breakpoint() {
|
||||
BREAKPOINT_AWESOME;
|
||||
|
|
|
@ -170,6 +170,7 @@ rust_dbg_lock_unlock
|
|||
rust_dbg_lock_wait
|
||||
rust_dbg_lock_signal
|
||||
rust_dbg_call
|
||||
rust_dbg_do_nothing
|
||||
rust_dbg_breakpoint
|
||||
rust_osmain_sched_id
|
||||
rust_compare_and_swap_ptr
|
||||
|
|
|
@ -1,4 +1,3 @@
|
|||
// xfail-test
|
||||
/*
|
||||
A reduced test case for Issue #506, provided by Rob Arnold.
|
||||
|
||||
|
@ -10,10 +9,9 @@ import task;
|
|||
|
||||
#[abi = "cdecl"]
|
||||
extern mod rustrt {
|
||||
fn get_task_id() -> libc::intptr_t;
|
||||
fn rust_dbg_do_nothing();
|
||||
}
|
||||
|
||||
fn main() {
|
||||
let f: fn() -> libc::intptr_t = rustrt::get_task_id;
|
||||
task::spawn(unsafe { unsafe::reinterpret_cast(f) });
|
||||
task::spawn(rustrt::rust_dbg_do_nothing);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue