diff options
| author | bors <bors@rust-lang.org> | 2023-04-22 12:27:45 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2023-04-22 12:27:45 +0000 |
| commit | 39cf520299794e6c1b6b471db5d9935e0c6271ab (patch) | |
| tree | 73cb9a139e96bd86137ba715a490d00ea12c5b77 /library/core | |
| parent | 21fab435da99d6ef14c1c870650ee976499564f3 (diff) | |
| parent | 4da05e0b88d8b51fc6912da2d0b93edb2780e76b (diff) | |
| download | rust-39cf520299794e6c1b6b471db5d9935e0c6271ab.tar.gz rust-39cf520299794e6c1b6b471db5d9935e0c6271ab.zip | |
Auto merge of #109507 - Amanieu:panic-oom-payload, r=davidtwco
Report allocation errors as panics OOM is now reported as a panic but with a custom payload type (`AllocErrorPanicPayload`) which holds the layout that was passed to `handle_alloc_error`. This should be review one commit at a time: - The first commit adds `AllocErrorPanicPayload` and changes allocation errors to always be reported as panics. - The second commit removes `#[alloc_error_handler]` and the `alloc_error_hook` API. ACP: https://github.com/rust-lang/libs-team/issues/192 Closes #51540 Closes #51245
Diffstat (limited to 'library/core')
| -rw-r--r-- | library/core/src/macros/mod.rs | 10 | ||||
| -rw-r--r-- | library/core/src/prelude/v1.rs | 4 |
2 files changed, 1 insertions, 13 deletions
diff --git a/library/core/src/macros/mod.rs b/library/core/src/macros/mod.rs index 7c93c93b4a0..cc3179ee780 100644 --- a/library/core/src/macros/mod.rs +++ b/library/core/src/macros/mod.rs @@ -1531,16 +1531,6 @@ pub(crate) mod builtin { /* compiler built-in */ } - /// Attribute macro applied to a function to register it as a handler for allocation failure. - /// - /// See also [`std::alloc::handle_alloc_error`](../../../std/alloc/fn.handle_alloc_error.html). - #[unstable(feature = "alloc_error_handler", issue = "51540")] - #[allow_internal_unstable(rustc_attrs)] - #[rustc_builtin_macro] - pub macro alloc_error_handler($item:item) { - /* compiler built-in */ - } - /// Keeps the item it's applied to if the passed path is accessible, and removes it otherwise. #[unstable( feature = "cfg_accessible", diff --git a/library/core/src/prelude/v1.rs b/library/core/src/prelude/v1.rs index 10525a16f3a..9c4c0f6ab7a 100644 --- a/library/core/src/prelude/v1.rs +++ b/library/core/src/prelude/v1.rs @@ -76,9 +76,7 @@ pub use crate::macros::builtin::{RustcDecodable, RustcEncodable}; // Do not `doc(no_inline)` so that they become doc items on their own // (no public module for them to be re-exported from). #[stable(feature = "builtin_macro_prelude", since = "1.38.0")] -pub use crate::macros::builtin::{ - alloc_error_handler, bench, derive, global_allocator, test, test_case, -}; +pub use crate::macros::builtin::{bench, derive, global_allocator, test, test_case}; #[unstable(feature = "derive_const", issue = "none")] pub use crate::macros::builtin::derive_const; |
