diff options
| author | bors <bors@rust-lang.org> | 2016-12-21 10:38:22 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2016-12-21 10:38:22 +0000 |
| commit | 1b38776c1f68c6fd47c1b2f7b7974efc7dd64901 (patch) | |
| tree | ab3fa350432db81e6a2491419e99fd9704cb458e /src/liballoc | |
| parent | 439c3128d740af372dae163310f7292e999098e1 (diff) | |
| parent | 0013d4cdf61a61abab79789c9ad5320bd1e2d56a (diff) | |
| download | rust-1b38776c1f68c6fd47c1b2f7b7974efc7dd64901.tar.gz rust-1b38776c1f68c6fd47c1b2f7b7974efc7dd64901.zip | |
Auto merge of #38302 - Mark-Simulacrum:trans-cleanup, r=eddyb
Cleanup old trans This is a cleanup of old trans, with the following main points: - Remove the `build.rs` API (prefer using `Builder` directly, which is now passed where needed through `BlockAndBuilder`). - Remove `Block` (inlining it into `BlockAndBuilder`) - Remove `Callee::call`, primarily through inlining and simplification of code. - Thinned `FunctionContext`: - `mir`, `debug_scopes`, `scopes`, and `fn_ty` are moved to `MirContext`. - `param_env` is moved to `SharedCrateContext` and renamed to `empty_param_env`. - `llretslotptr` is removed, replaced with more careful management of the return values in calls. - `landingpad_alloca` is inlined into cleanup. - `param_substs` are moved to `MirContext`. - `span` is removed, it was never set to anything but `None`. - `block_arena` and `lpad_arena` are removed, since neither was necessary (landing pads and block are quite small, and neither needs arena allocation). - Fixed `drop_in_place` not running other destructors in the same function. Fixes #35566 (thanks to @est31 for confirming).
Diffstat (limited to 'src/liballoc')
| -rw-r--r-- | src/liballoc/heap.rs | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/liballoc/heap.rs b/src/liballoc/heap.rs index 12809171b74..a1e32636980 100644 --- a/src/liballoc/heap.rs +++ b/src/liballoc/heap.rs @@ -127,6 +127,7 @@ pub fn usable_size(size: usize, align: usize) -> usize { pub const EMPTY: *mut () = 0x1 as *mut (); /// The allocator for unique pointers. +// This function must not unwind. If it does, MIR trans will fail. #[cfg(not(test))] #[lang = "exchange_malloc"] #[inline] |
