2015-10-21 11:59:24 -05:00
|
|
|
// See rsbegin.rs for details.
|
|
|
|
|
2020-11-22 21:54:31 -06:00
|
|
|
#![feature(no_core)]
|
|
|
|
#![feature(lang_items)]
|
|
|
|
#![cfg_attr(bootstrap, feature(optin_builtin_traits))]
|
|
|
|
#![cfg_attr(not(bootstrap), feature(auto_traits))]
|
2019-12-22 16:42:04 -06:00
|
|
|
#![crate_type = "rlib"]
|
2016-09-13 00:40:14 -05:00
|
|
|
#![no_core]
|
|
|
|
|
|
|
|
#[lang = "sized"]
|
|
|
|
trait Sized {}
|
|
|
|
#[lang = "sync"]
|
|
|
|
trait Sync {}
|
|
|
|
impl<T> Sync for T {}
|
2017-04-20 16:32:54 -05:00
|
|
|
#[lang = "copy"]
|
|
|
|
trait Copy {}
|
|
|
|
#[lang = "freeze"]
|
2017-12-01 06:01:23 -06:00
|
|
|
auto trait Freeze {}
|
2017-04-20 16:32:54 -05:00
|
|
|
|
2017-09-28 03:30:25 -05:00
|
|
|
#[lang = "drop_in_place"]
|
2017-04-20 16:32:54 -05: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 16:32:50 -05:00
|
|
|
|
2019-12-22 16:42:04 -06:00
|
|
|
#[cfg(all(target_os = "windows", target_arch = "x86", target_env = "gnu"))]
|
2016-05-29 10:34:21 -05:00
|
|
|
pub mod eh_frames {
|
2015-10-18 16:32:50 -05: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;
|
|
|
|
}
|