lib.rs 936 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. #![no_std]
  2. #![feature(lang_items)]
  3. extern crate compiler_builtins;
  4. extern crate platform;
  5. extern crate ctype;
  6. extern crate errno;
  7. extern crate fcntl;
  8. extern crate grp;
  9. extern crate mman;
  10. extern crate semaphore;
  11. extern crate stat;
  12. extern crate stdio;
  13. extern crate stdlib;
  14. extern crate string;
  15. extern crate unistd;
  16. extern crate wctype;
  17. #[lang = "eh_personality"]
  18. #[no_mangle]
  19. pub extern "C" fn rust_eh_personality() {}
  20. #[lang = "panic_fmt"]
  21. #[no_mangle]
  22. pub extern "C" fn rust_begin_unwind(fmt: ::core::fmt::Arguments, file: &str, line: u32) -> ! {
  23. use core::fmt::Write;
  24. let mut w = platform::FileWriter(2);
  25. let _ = w.write_fmt(format_args!("{}:{}: {}\n", file, line, fmt));
  26. platform::exit(1);
  27. }
  28. #[allow(non_snake_case)]
  29. #[no_mangle]
  30. pub extern "C" fn _Unwind_Resume() -> ! {
  31. use core::fmt::Write;
  32. let mut w = platform::FileWriter(2);
  33. let _ = w.write_str("_Unwind_Resume\n");
  34. platform::exit(1);
  35. }