2 // ignore-wasm32-bare no libc to test ffi with
3 // ignore-emscripten blows the JS stack
5 #![feature(rustc_private)]
12 #[link(name = "rust_test_helpers", kind = "static")]
15 cb: extern "C" fn(libc::uintptr_t) -> libc::uintptr_t,
16 data: libc::uintptr_t,
21 extern "C" fn cb(data: libc::uintptr_t) -> libc::uintptr_t {
22 if data == 1 { data } else { count(data - 1) + 1 }
25 fn count(n: libc::uintptr_t) -> libc::uintptr_t {
27 println!("n = {}", n);
28 rustrt::rust_dbg_call(cb, n)
33 let result = count(1000);
34 println!("result = {}", result);
35 assert_eq!(result, 1000);