Prevent override of panic from relibc
This commit is contained in:
+3
-9
@@ -2,7 +2,7 @@
|
||||
|
||||
#![no_std]
|
||||
#![feature(asm)]
|
||||
#![feature(lang_items)]
|
||||
#![feature(core_intrinsics)]
|
||||
#![feature(linkage)]
|
||||
#![feature(naked_functions)]
|
||||
|
||||
@@ -29,12 +29,6 @@ pub unsafe extern "C" fn _start() {
|
||||
}
|
||||
|
||||
#[panic_handler]
|
||||
#[linkage = "weak"]
|
||||
#[no_mangle]
|
||||
pub extern "C" fn rust_begin_unwind(_pi: &::core::panic::PanicInfo) -> ! {
|
||||
extern "C" {
|
||||
fn exit(status: i32) -> !;
|
||||
}
|
||||
|
||||
unsafe { exit(1) }
|
||||
unsafe fn panic(_pi: &::core::panic::PanicInfo) -> ! {
|
||||
::core::intrinsics::abort();
|
||||
}
|
||||
|
||||
+3
-8
@@ -1,6 +1,7 @@
|
||||
//! crti
|
||||
|
||||
#![no_std]
|
||||
#![feature(core_intrinsics)]
|
||||
#![feature(global_asm)]
|
||||
#![feature(linkage)]
|
||||
|
||||
@@ -46,12 +47,6 @@ global_asm!(r#"
|
||||
"#);
|
||||
|
||||
#[panic_handler]
|
||||
#[linkage = "weak"]
|
||||
#[no_mangle]
|
||||
pub extern "C" fn rust_begin_unwind(_pi: &::core::panic::PanicInfo) -> ! {
|
||||
extern "C" {
|
||||
fn exit(status: i32) -> !;
|
||||
}
|
||||
|
||||
unsafe { exit(1) }
|
||||
unsafe fn panic(_pi: &::core::panic::PanicInfo) -> ! {
|
||||
::core::intrinsics::abort();
|
||||
}
|
||||
|
||||
+3
-8
@@ -1,6 +1,7 @@
|
||||
//! crti
|
||||
|
||||
#![no_std]
|
||||
#![feature(core_intrinsics)]
|
||||
#![feature(global_asm)]
|
||||
#![feature(linkage)]
|
||||
|
||||
@@ -36,12 +37,6 @@ global_asm!(r#"
|
||||
"#);
|
||||
|
||||
#[panic_handler]
|
||||
#[linkage = "weak"]
|
||||
#[no_mangle]
|
||||
pub extern "C" fn rust_begin_unwind(_pi: &::core::panic::PanicInfo) -> ! {
|
||||
extern "C" {
|
||||
fn exit(status: i32) -> !;
|
||||
}
|
||||
|
||||
unsafe { exit(1) }
|
||||
unsafe fn panic(_pi: &::core::panic::PanicInfo) -> ! {
|
||||
::core::intrinsics::abort();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user