Skip to content

Commit

Permalink
Rollup merge of rust-lang#126322 - m-ou-se:panicinfo-and-panicinfo-2,…
Browse files Browse the repository at this point in the history
… r=RalfJung

Follow up to splitting core's PanicInfo and std's PanicInfo
  • Loading branch information
GuillaumeGomez authored Jun 12, 2024
2 parents db03ec6 + 3acb41f commit 027c82e
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 9 deletions.
9 changes: 4 additions & 5 deletions core/src/panic/panic_info.rs
Original file line number Diff line number Diff line change
Expand Up @@ -29,9 +29,8 @@ impl<'a> PanicInfo<'a> {
PanicInfo { location, message, can_unwind, force_no_backtrace }
}

/// If the `panic!` macro from the `core` crate (not from `std`)
/// was used with a formatting string and some additional arguments,
/// returns that message ready to be used for example with [`fmt::write`]
/// The message that was given to the `panic!` macro,
/// ready to be formatted with e.g. [`fmt::write`].
#[must_use]
#[unstable(feature = "panic_info_message", issue = "66745")]
pub fn message(&self) -> fmt::Arguments<'_> {
Expand Down Expand Up @@ -72,15 +71,15 @@ impl<'a> PanicInfo<'a> {

/// Returns the payload associated with the panic.
///
/// On `core::panic::PanicInfo`, this method never returns anything useful.
/// On this type, `core::panic::PanicInfo`, this method never returns anything useful.
/// It only exists because of compatibility with [`std::panic::PanicHookInfo`],
/// which used to be the same type.
///
/// See [`std::panic::PanicHookInfo::payload`].
///
/// [`std::panic::PanicHookInfo`]: ../../std/panic/struct.PanicHookInfo.html
/// [`std::panic::PanicHookInfo::payload`]: ../../std/panic/struct.PanicHookInfo.html#method.payload
#[deprecated(since = "1.77.0", note = "this never returns anything useful")]
#[deprecated(since = "1.81.0", note = "this never returns anything useful")]
#[stable(feature = "panic_hooks", since = "1.10.0")]
#[allow(deprecated, deprecated_in_future)]
pub fn payload(&self) -> &(dyn crate::any::Any + Send) {
Expand Down
5 changes: 1 addition & 4 deletions std/src/panic.rs
Original file line number Diff line number Diff line change
Expand Up @@ -202,10 +202,7 @@ impl fmt::Display for PanicHookInfo<'_> {
fn fmt(&self, formatter: &mut fmt::Formatter<'_>) -> fmt::Result {
formatter.write_str("panicked at ")?;
self.location.fmt(formatter)?;
if let Some(payload) = self.payload.downcast_ref::<&'static str>() {
formatter.write_str(":\n")?;
formatter.write_str(payload)?;
} else if let Some(payload) = self.payload.downcast_ref::<String>() {
if let Some(payload) = self.payload_as_str() {
formatter.write_str(":\n")?;
formatter.write_str(payload)?;
}
Expand Down

0 comments on commit 027c82e

Please sign in to comment.