lib.rs 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. #![doc = include_str!("../README.md")]
  2. #![feature(c_unwind)]
  3. #![feature(naked_functions)]
  4. // lang_items is an internal feature. `internal_features` lint is added recently
  5. // so also allow unknown lints to prevent warning in older nightly versions.
  6. #![allow(unknown_lints)]
  7. #![allow(internal_features)]
  8. #![cfg_attr(
  9. any(feature = "personality", feature = "personality-dummy"),
  10. feature(lang_items)
  11. )]
  12. #![cfg_attr(
  13. any(feature = "panicking", feature = "panic-handler-dummy"),
  14. feature(core_intrinsics)
  15. )]
  16. #![cfg_attr(feature = "panic-handler", feature(thread_local))]
  17. #![warn(rust_2018_idioms)]
  18. #![warn(unsafe_op_in_unsafe_fn)]
  19. #![no_std]
  20. #[cfg(feature = "alloc")]
  21. extern crate alloc;
  22. #[cfg(feature = "unwinder")]
  23. mod unwinder;
  24. #[cfg(all(feature = "unwinder", feature = "fde-custom"))]
  25. pub use unwinder::custom_eh_frame_finder;
  26. pub mod abi;
  27. mod arch;
  28. mod util;
  29. #[cfg(feature = "print")]
  30. pub mod print;
  31. #[cfg(feature = "personality")]
  32. mod personality;
  33. #[cfg(all(not(feature = "personality"), feature = "personality-dummy"))]
  34. mod personality_dummy;
  35. #[cfg(feature = "panic")]
  36. pub mod panic;
  37. #[cfg(feature = "panicking")]
  38. pub mod panicking;
  39. #[cfg(feature = "panic-handler")]
  40. mod panic_handler;
  41. #[cfg(all(not(feature = "panic-handler"), feature = "panic-handler-dummy"))]
  42. mod panic_handler_dummy;
  43. #[cfg(feature = "system-alloc")]
  44. mod system_alloc;