1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495 |
- #![no_std]
- #![feature(lang_items)]
- #![feature(linkage)]
- #![feature(panic_implementation)]
- //extern crate compiler_builtins;
- extern crate platform;
- pub extern crate arpainet;
- pub extern crate ctype;
- pub extern crate dirent;
- pub extern crate errno;
- pub extern crate fcntl;
- pub extern crate fenv;
- pub extern crate float;
- pub extern crate fnmatch;
- pub extern crate grp;
- pub extern crate locale;
- pub extern crate netinet;
- pub extern crate pwd;
- pub extern crate semaphore;
- pub extern crate setjmp;
- pub extern crate signal;
- pub extern crate stdio;
- pub extern crate stdlib;
- pub extern crate string;
- pub extern crate strings;
- pub extern crate sys_ioctl;
- pub extern crate sys_mman;
- pub extern crate sys_resource;
- pub extern crate sys_select;
- pub extern crate sys_socket;
- pub extern crate sys_stat;
- pub extern crate sys_time;
- pub extern crate sys_times;
- pub extern crate sys_un;
- pub extern crate sys_utsname;
- pub extern crate sys_wait;
- pub extern crate termios;
- pub extern crate time;
- pub extern crate unistd;
- pub extern crate utime;
- pub extern crate wchar;
- pub extern crate wctype;
- use platform::{Pal, Sys};
- #[cfg(not(test))]
- #[panic_implementation]
- #[linkage = "weak"]
- #[no_mangle]
- pub extern "C" fn rust_begin_unwind(pi: &::core::panic::PanicInfo) -> ! {
- use core::fmt::Write;
- let mut w = platform::FileWriter(2);
- let _ = w.write_fmt(format_args!("RELIBC PANIC: {}\n", pi));
- Sys::exit(1);
- }
- #[cfg(not(test))]
- #[lang = "eh_personality"]
- #[no_mangle]
- #[linkage = "weak"]
- pub extern "C" fn rust_eh_personality() {}
- #[cfg(not(test))]
- #[lang = "oom"]
- #[linkage = "weak"]
- #[no_mangle]
- pub extern "C" fn rust_oom(layout: ::core::alloc::Layout) -> ! {
- use core::fmt::Write;
- let mut w = platform::FileWriter(2);
- let _ = w.write_fmt(format_args!(
- "RELIBC OOM: {} bytes aligned to {} bytes\n",
- layout.size(),
- layout.align()
- ));
- Sys::exit(1);
- }
- #[cfg(not(test))]
- #[allow(non_snake_case)]
- #[linkage = "weak"]
- #[no_mangle]
- pub extern "C" fn _Unwind_Resume() -> ! {
- use core::fmt::Write;
- let mut w = platform::FileWriter(2);
- let _ = w.write_str("_Unwind_Resume\n");
- Sys::exit(1);
- }
|