diff options
| author | Simon Sapin <simon.sapin@exyr.org> | 2018-07-06 15:49:52 +0200 |
|---|---|---|
| committer | Simon Sapin <simon.sapin@exyr.org> | 2018-07-09 23:13:24 +0200 |
| commit | 239ec7d2dce9c19de16c9ee64addbb834119397c (patch) | |
| tree | 70a3ac0834334243abf684057a29cb292215021a /src/test/ui/missing-allocator.rs | |
| parent | 872effa1183f404cc0df06e58034d05bf590cbad (diff) | |
| download | rust-239ec7d2dce9c19de16c9ee64addbb834119397c.tar.gz rust-239ec7d2dce9c19de16c9ee64addbb834119397c.zip | |
Implement #[alloc_error_handler]
This to-be-stable attribute is equivalent to `#[lang = "oom"]`. It is required when using the alloc crate without the std crate. It is called by `handle_alloc_error`, which is in turned called by "infallible" allocations APIs such as `Vec::push`.
Diffstat (limited to 'src/test/ui/missing-allocator.rs')
| -rw-r--r-- | src/test/ui/missing-allocator.rs | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/test/ui/missing-allocator.rs b/src/test/ui/missing-allocator.rs index 24282631b7e..c949dcb635a 100644 --- a/src/test/ui/missing-allocator.rs +++ b/src/test/ui/missing-allocator.rs @@ -13,14 +13,16 @@ #![no_std] #![crate_type = "staticlib"] -#![feature(panic_implementation, lang_items, alloc)] +#![feature(panic_implementation, alloc_error_handler, alloc)] #[panic_implementation] fn panic(_: &core::panic::PanicInfo) -> ! { loop {} } -#[lang = "oom"] -fn oom() {} +#[alloc_error_handler] +fn oom(_: core::alloc::Layout) -> ! { + loop {} +} extern crate alloc; |
