注意:编译本文代码需要最新 Rust Nightly 编译器。
1. Hello, world!
#![feature(intrinsics, lang_items, no_core)]
#![no_core]
#![no_main]
#[lang = "copy"]
trait Copy {}
#[lang = "sized"]
trait Sized {}
#[cfg_attr(unix, link(name = "c"))]
extern "C" {
fn puts(s: *const u8) -> i32;
}
extern "rust-intrinsic" {
fn transmute<T, U>(x: T) -> U;
}
#[cfg(all(windows, target_env = "gnu"))]
pub mod eh_frame_registry
{
#[no_mangle]
pub extern "C"