2015-10-21 18:59:24 +02:00
|
|
|
// See rsbegin.rs for details.
|
|
|
|
|
2017-04-20 23:32:54 +02:00
|
|
|
#![feature(no_core, lang_items, optin_builtin_traits)]
|
2019-12-22 23:42:04 +01:00
|
|
|
#![crate_type = "rlib"]
|
2016-09-13 07:40:14 +02:00
|
|
|
#![no_core]
|
|
|
|
|
|
|
|
#[lang = "sized"]
|
|
|
|
trait Sized {}
|
|
|
|
#[lang = "sync"]
|
|
|
|
trait Sync {}
|
|
|
|
impl<T> Sync for T {}
|
2017-04-20 23:32:54 +02:00
|
|
|
#[lang = "copy"]
|
|
|
|
trait Copy {}
|
|
|
|
#[lang = "freeze"]
|
2017-12-01 13:01:23 +01:00
|
|
|
auto trait Freeze {}
|
2017-04-20 23:32:54 +02:00
|
|
|
|
2017-09-28 10:30:25 +02:00
|
|
|
#[lang = "drop_in_place"]
|
2017-04-20 23:32:54 +02:00
|
|
|
#[inline]
|
|
|
|
#[allow(unconditional_recursion)]
|
|
|
|
pub unsafe fn drop_in_place<T: ?Sized>(to_drop: *mut T) {
|
|
|
|
drop_in_place(to_drop);
|
|
|
|
}
|
2015-10-18 23:32:50 +02:00
|
|
|
|
2019-12-22 23:42:04 +01:00
|
|
|
#[cfg(all(target_os = "windows", target_arch = "x86", target_env = "gnu"))]
|
2016-05-29 17:34:21 +02:00
|
|
|
pub mod eh_frames {
|
2015-10-18 23:32:50 +02:00
|
|
|
// Terminate the frame unwind info section with a 0 as a sentinel;
|
|
|
|
// this would be the 'length' field in a real FDE.
|
|
|
|
#[no_mangle]
|
|
|
|
#[link_section = ".eh_frame"]
|
|
|
|
pub static __EH_FRAME_END__: u32 = 0;
|
|
|
|
}
|