about summary refs log tree commit diff
path: root/src/liballoc
AgeCommit message (Collapse)AuthorLines
2018-08-23attempt to work around Box<T> not being recognized as local typeNiv Kaminer-7/+8
2018-08-23add top-level documentation to the std pin moduleNiv Kaminer-0/+4
2018-08-23move PinBox into pin module and export through stdNiv Kaminer-202/+226
2018-08-23move PinMut into pin module and export through stdNiv Kaminer-1/+2
2018-08-22Add a test for issue #53529MaloJaffre-0/+17
2018-08-22Fix unsoundness in VecDeque Debug implsMaloJaffre-8/+8
Fixes #53566.
2018-08-22Revert "Auto merge of #52553 - Pazzaz:vecdeque-append, r=SimonSapin"MaloJaffre-159/+2
This partially reverts commit d5b6b95aef94169b5dbe4dbb1357d4bab1fc9800, reversing changes made to 6b1ff19af36f7bbf1974579ec1b9bf2c8ccd595e. Fixes #53529. Cc: #53564.
2018-08-22docs: std::string::String.repeat(): slightly rephrase to be more in-line ↵Matthias Krüger-4/+4
with other descriptions. add ticks around a few keywords in other descriptions.
2018-08-21Auto merge of #53530 - kennytm:rollup, r=kennytmbors-80/+82
Rollup of 17 pull requests Successful merges: - #53030 (Updated RELEASES.md for 1.29.0) - #53104 (expand the documentation on the `Unpin` trait) - #53213 (Stabilize IP associated constants) - #53296 (When closure with no arguments was expected, suggest wrapping) - #53329 (Replace usages of ptr::offset with ptr::{add,sub}.) - #53363 (add individual docs to `core::num::NonZero*`) - #53370 (Stabilize macro_vis_matcher) - #53393 (Mark libserialize functions as inline) - #53405 (restore the page title after escaping out of a search) - #53452 (Change target triple used to check for lldb in build-manifest) - #53462 (Document Box::into_raw returns non-null ptr) - #53465 (Remove LinkMeta struct) - #53492 (update lld submodule to include RISCV patch) - #53496 (Fix typos found by codespell.) - #53521 (syntax: Optimize some literal parsing) - #53540 (Moved issue-53157.rs into src/test/ui/consts/const-eval/) - #53551 (Avoid some Place clones.) Failed merges: r? @ghost
2018-08-21Rollup merge of #53329 - frewsxcv:frewsxcv-ptr-add-sub, r=RalfJungkennytm-78/+78
Replace usages of ptr::offset with ptr::{add,sub}. Rust provides these helper methods – so let's use them!
2018-08-21Rollup merge of #53462 - estk:doc-Box_into_raw, r=steveklabnikkennytm-1/+3
Document Box::into_raw returns non-null ptr Closes #52806.
2018-08-21Auto merge of #53080 - hermord:rc-opt, r=alexcrichtonbors-2/+16
Change `Rc::inc_{weak,strong}` to better hint optimization to LLVM As discussed in #13018, `Rc::inc_strong` and `Rc::inc_weak` are changed to allow compositions of `clone` and `drop` to be better optimized. Almost entirely as in [this comment](https://github.com/rust-lang/rust/issues/13018#issuecomment-408642184), except that `abort` on zero is added so that a `drop(t.clone())` does not produce a zero check followed by conditional deallocation. This is different from #21418 in that it doesn't rely on `assume`, avoiding the prohibitive compilation slowdown. [Before and after IR](https://gist.github.com/hermord/266e55451b7fe0bb8caa6e35d17c86e1).
2018-08-20Document Box::into_raw returns non-null ptrEvan Simmons-1/+3
2018-08-20Replace usages of ptr::offset with ptr::{add,sub}.Corey Farwell-78/+78
2018-08-19Remove old testsvarkor-50/+0
2018-08-19Fix typos found by codespell.Matthias Krüger-1/+1
2018-08-18Auto merge of #52553 - Pazzaz:vecdeque-append, r=SimonSapinbors-2/+313
Non-naive implementation of `VecDeque.append` Replaces the old, simple implementation with a more manual (and **unsafe** 😱) one. I've added 1 more test and verified that it covers all 6 code paths in the function. This new implementation was about 60% faster than the old naive one when I tried benchmarking it.
2018-08-15Review fixRoman Proskuryakov-0/+1
2018-08-15Test VecDeque append not dropping twicePazzaz-0/+25
2018-08-15Clarify unused_as_mut_slicesPazzaz-3/+6
2018-08-15Fix review notesRoman Proskuryakov-1/+1
2018-08-14Add doc examples for std::alloc::{alloc,alloc_zeroed}.Corey Farwell-0/+31
2018-08-14Clarify dst conditionPazzaz-8/+8
2018-08-14Don't drop values in other, just move the tailPazzaz-7/+3
2018-08-11Add links to std::char::REPLACEMENT_CHARACTER from docs.Corey Farwell-2/+4
There are a few places where we mention the replacement character in the docs, and it could be helpful for users to utilize the constant which is available in the standard library, so let’s link to it!
2018-08-10Add benchmark for VecDeque appendPazzaz-0/+53
2018-08-09liballoc: enable feature(nll) for bootstrapmemoryruins-0/+1
2018-08-07Rollup merge of #53068 - MajorBreakfast:spawn, r=cramertjkennytm-5/+8
Rename Executor trait to Spawn Renames the `Executor` trait to `Spawn` and the method on `Context` to `spawner`. Note: Best only merge this after we've the alpha 3 announcement post ready. r? @cramertj
2018-08-06Add one more example for Cow that shows how to keep Cow in a structRoman Proskuryakov-0/+34
2018-08-06Rename Executor trait to SpawnJosef Reinhard Brandl-5/+8
2018-08-05Make features stable and clarify examplesvarkor-1/+0
2018-08-05Fix stage 2 testsvarkor-7/+3
2018-08-05Correct invalid feature attributesvarkor-1/+1
2018-08-05Remove unnecessary or invalid feature attributesvarkor-9/+1
2018-08-05Fixed typoDmytro Shynkevych-2/+2
2018-08-04Changed `Rc::inc_{weak,strong}` to better hint optimization to LLVMDmytro Shynkevych-2/+16
2018-08-02Add trim_start, trim_end, trim_start_matches and trim_end_matchesvarkor-0/+59
2018-08-02Auto merge of #52949 - Mark-Simulacrum:snap, r=alexcrichtonbors-16/+4
Switch to bootstrapping from 1.29 beta r? @alexcrichton
2018-08-01Switch to bootstrapping from 1.29 betaMark Rousskov-16/+4
2018-07-31Use SetLenOnDrop in Vec::truncate()Laurentiu Nicola-6/+17
This avoids a redundant length check in some cases when calling `Vec::truncate` or `Vec::clear`. Fixes #51802
2018-07-28Rollup merge of #52769 - sinkuu:stray_test, r=alexcrichtonkennytm-19/+12
Incorporate a stray test `liballoc/repeat-generic-slice.rs` doesn't seem to be tested (I think it was intended to be placed in `run-pass`). This PR incorporates the test into `liballoc/tests`.
2018-07-27Auto merge of #52336 - ishitatsuyuki:dyn-rollup, r=Mark-Simulacrumbors-9/+8
Rollup of bare_trait_objects PRs All deny attributes were moved into bootstrap so they can be disabled with a line of config. Warnings for external tools are allowed and it's up to the tool's maintainer to keep it warnings free. r? @Mark-Simulacrum cc @ljedrz @kennytm
2018-07-27Incorporate a stray testShotaro Yamada-19/+12
2018-07-25Deny bare_trait_objects globallyTatsuyuki Ishi-1/+0
2018-07-25Add missing dynTatsuyuki Ishi-8/+8
2018-07-24Impl Executor for Box<E: Executor>tinaun-1/+14
2018-07-24Auto merge of #52189 - cuviper:static-box-leak, r=blussbors-1/+3
doc: Clarify the lifetime returned by `Box::leak` `Box::leak` mentions that it can return a `'static` reference, but it wasn't immediately clear to me why it doesn't always do so. This is because of the `T: 'a` constraint needed to form a valid reference, and in general we want to be more flexible than requiring `T: 'static`. This patch tries to clarify the relationship between `T` and `'a`.
2018-07-23typosRalf Jung-4/+4
2018-07-23Don't use NonNull::dangling as sentinel valueRalf Jung-9/+17
Instead, rely on alignment and use usize::MAX as sentinel.
2018-07-22Make VecDeque append safer and easier to understandPazzaz-109/+131