diff options
| author | pat-nel87 <71235856+pat-nel87@users.noreply.github.com> | 2023-03-26 11:20:56 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-03-26 11:20:56 -0400 |
| commit | af489afeb7b6ca6f31848c4141652f4dcb2a7fa6 (patch) | |
| tree | f28bc68704d4bc0dc9a4490258b569f77e47d629 /compiler/rustc_codegen_gcc/example/alloc_example.rs | |
| parent | 21549dac539dc220f052d038ec643645cedbbd6d (diff) | |
| parent | 89c2e3d3d75486e52473de3ae38f0ca6efeffef2 (diff) | |
| download | rust-af489afeb7b6ca6f31848c4141652f4dcb2a7fa6.tar.gz rust-af489afeb7b6ca6f31848c4141652f4dcb2a7fa6.zip | |
Merge branch 'master' into Issue-107957-black_box_docs
Diffstat (limited to 'compiler/rustc_codegen_gcc/example/alloc_example.rs')
| -rw-r--r-- | compiler/rustc_codegen_gcc/example/alloc_example.rs | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/compiler/rustc_codegen_gcc/example/alloc_example.rs b/compiler/rustc_codegen_gcc/example/alloc_example.rs index 74ea7ec4ede..754e7931412 100644 --- a/compiler/rustc_codegen_gcc/example/alloc_example.rs +++ b/compiler/rustc_codegen_gcc/example/alloc_example.rs @@ -1,4 +1,4 @@ -#![feature(start, box_syntax, core_intrinsics, alloc_error_handler)] +#![feature(start, core_intrinsics, alloc_error_handler, lang_items)] #![no_std] extern crate alloc; @@ -18,21 +18,27 @@ extern "C" { #[panic_handler] fn panic_handler(_: &core::panic::PanicInfo) -> ! { - unsafe { - core::intrinsics::abort(); - } + core::intrinsics::abort(); } #[alloc_error_handler] fn alloc_error_handler(_: alloc::alloc::Layout) -> ! { - unsafe { - core::intrinsics::abort(); - } + core::intrinsics::abort(); +} + +#[lang = "eh_personality"] +fn eh_personality() -> ! { + loop {} +} + +#[no_mangle] +unsafe extern "C" fn _Unwind_Resume() { + core::intrinsics::unreachable(); } #[start] fn main(_argc: isize, _argv: *const *const u8) -> isize { - let world: Box<&str> = box "Hello World!\0"; + let world: Box<&str> = Box::new("Hello World!\0"); unsafe { puts(*world as *const str as *const u8); } |
