about summary refs log tree commit diff
path: root/src/libcore
diff options
context:
space:
mode:
authorJonathan Turner <jonathandturner@users.noreply.github.com>2016-08-17 06:25:25 -0700
committerGitHub <noreply@github.com>2016-08-17 06:25:25 -0700
commitea09b7d8c6eeeb8433bbdda50ffcc989d4f82fdf (patch)
treec8b5cd73c2cde92070408a681731b6a163bf1134 /src/libcore
parenta9e3cffde1fa0bbe61cd9d34f2a9c45c78249738 (diff)
parente586d2174bd732bcc4a430266f371fbb82b39398 (diff)
downloadrust-ea09b7d8c6eeeb8433bbdda50ffcc989d4f82fdf.tar.gz
rust-ea09b7d8c6eeeb8433bbdda50ffcc989d4f82fdf.zip
Rollup merge of #35663 - CryZe:no-stdlib, r=Manishearth
Improve `No stdlib` and related Documentation

This renames all lang item function names to the ones used in `libstd` and `libpanic_unwind`. It also explains the `eh_unwind_resume` lang item in the `libcore` documentation, where it was missing. A third function is also needed on certain compilation targets, so this was also added to the `No stdlib` documentation.
Diffstat (limited to 'src/libcore')
-rw-r--r--src/libcore/lib.rs5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/libcore/lib.rs b/src/libcore/lib.rs
index 7831464756b..2a9678203e1 100644
--- a/src/libcore/lib.rs
+++ b/src/libcore/lib.rs
@@ -42,6 +42,11 @@
 //!   line. It is up to consumers of this core library to define this panic
 //!   function; it is only required to never return. This requires a `lang`
 //!   attribute named `panic_fmt`.
+//!
+//! * `rust_eh_personality` - is used by the failure mechanisms of the
+//!    compiler. This is often mapped to GCC's personality function, but crates
+//!    which do not trigger a panic can be assured that this function is never
+//!    called. The `lang` attribute is called `eh_personality`.
 
 // Since libcore defines many fundamental lang items, all tests live in a
 // separate crate, libcoretest, to avoid bizarre issues.