27 lines
638 B
Rust
27 lines
638 B
Rust
#[path = "unsupported/mod.rs"]
|
|
mod unsupported;
|
|
use crate::os::survos::syscall;
|
|
|
|
pub use self::unsupported::*;
|
|
|
|
/// # Safety
|
|
/// `argc` and `argv` are passed by the kernel
|
|
#[unsafe(no_mangle)]
|
|
#[stable(feature = "rust1", since = "1.0.0")]
|
|
pub unsafe extern "C" fn _start(argc: isize, argv: *const *const u8) -> isize {
|
|
unsafe extern "C" {
|
|
fn main(argc: isize, argv: *const *const u8) -> isize;
|
|
}
|
|
|
|
unsafe { main(argc, argv) }
|
|
}
|
|
|
|
pub unsafe fn init(argc: isize, argv: *const *const u8, sigpipe: u8) {
|
|
crate::sys::args::init(argc, argv);
|
|
}
|
|
|
|
pub fn abort_internal() -> ! {
|
|
// todo real abort
|
|
syscall::exit()
|
|
}
|