mirror of
https://github.com/ahgamut/rust-ape-example.git
synced 2024-05-14 09:32:39 +00:00
32 lines
649 B
Rust
32 lines
649 B
Rust
#![no_main]
|
|
#![no_std]
|
|
#![feature(rustc_private)]
|
|
|
|
extern crate libc;
|
|
|
|
#[no_mangle]
|
|
pub extern "C" fn main(_argc: isize, _argv: *const *const u8) -> isize {
|
|
// Since we are passing a C string the final null character is mandatory
|
|
const HELLO: &'static str = "Hello, world! %d + %d = %d\n\0";
|
|
let x: i32 = 1;
|
|
let y: i32 = 2;
|
|
unsafe {
|
|
libc::printf(HELLO.as_ptr() as *const _, x, y, x+y);
|
|
}
|
|
0
|
|
}
|
|
|
|
#[panic_handler]
|
|
fn my_panic(_info: &core::panic::PanicInfo) -> ! {
|
|
loop {}
|
|
}
|
|
|
|
/* std crate requires some external changes
|
|
|
|
#![feature(restricted_std)]
|
|
|
|
pub fn main() {
|
|
println!("hello pls cosmo rust APE");
|
|
}
|
|
*/
|