about summary refs log tree commit diff
path: root/library/alloc/src
AgeCommit message (Collapse)AuthorLines
2020-08-03Rollup merge of #74974 - RalfJung:miri-tests, r=Mark-SimulacrumYuki Okushi-6/+11
Make tests faster in Miri Reduce some test iteration counts in Miri.
2020-08-03Rollup merge of #74874 - ssomers:btree_cleanup_8, r=Mark-SimulacrumYuki Okushi-8/+16
BTreeMap: define forget_type only when relevant Similar to `forget_node_type` for handles. No effect on generated code, apart maybe from the superfluous calls that might not have been optimized away. r? @Mark-Simulacrum
2020-08-03Rollup merge of #74762 - ssomers:btree_no_root_in_remove_kv_tracking, ↵Yuki Okushi-30/+73
r=Mark-Simulacrum BTreeMap::drain_filter should not touch the root during iteration Although Miri doesn't point it out, I believe there is undefined behaviour using `drain_filter` when draining the 11th-last element from a tree that was larger. When this happens, the last remaining child nodes are merged, the root becomes empty and is popped from the tree. That last step establishes a mutable reference to the node elected root and writes a pointer in `node::Root`, while iteration continues to visit the same node. This is mostly code from #74437, slightly adapted.
2020-08-03Rollup merge of #74686 - ssomers:btree_cleanup_3, r=Mark-SimulacrumYuki Okushi-10/+3
BTreeMap: remove into_slices and its unsafe block A small tweak to make BTreeMap code shorter and less unsafe. r? @Mark-Simulacrum
2020-08-02Auto merge of #75033 - Manishearth:rollup-d8afil1, r=Manishearthbors-1/+42
Rollup of 5 pull requests Successful merges: - #74602 (Clarify the doc for MaybeUninit::zeroed on incorrect use) - #74720 (Clean up E0728 explanation) - #74992 (fix rustdoc generic param order) - #75015 (Add Vec::spare_capacity_mut) - #75022 (Use a slice pattern instead of rchunks_exact(_).next()) Failed merges: r? @ghost
2020-08-01Auto merge of #74605 - rust-lang:vec-leak, r=Amanieubors-6/+4
Stabilize Vec::leak as a method Closes https://github.com/rust-lang/rust/issues/62195 The signature is changed to a method rather than an associated function: ```diff -pub fn leak<'a>(vec: Vec<T>) -> &'a mut [T] +pub fn leak<'a>(self) -> &'a mut [T] ``` The reason for `Box::leak` not to be a method (`Deref` to an arbitrary `T` which might have its own, different `leak` method) does not apply.
2020-08-01BTreeMap::drain_filter no longer touches the root during iterationStein Somers-30/+73
2020-08-01Add Vec::spare_capacity_mutAmanieu d'Antras-1/+42
2020-08-01Define forget_type only when relevantStein Somers-8/+16
2020-08-01Auto merge of #74373 - lcnr:array_chunks, r=withoutboatsbors-0/+3
add `slice::array_chunks` to std Now that #74113 has landed, these methods are suddenly usable. A rebirth of #72334 Tests are directly copied from `chunks_exact` and some additional tests for type inference. r? @withoutboats as you are both part of t-libs and working on const generics. closes #60735
2020-08-01add tracking issueBastian Kauschke-1/+1
2020-08-01Rollup merge of #74644 - crlf0710:drop_old_stuff, r=AmanieuYuki Okushi-62/+10
Remove `linked_list_extras` methods. Removing these in favor of the `Cursor` API in https://github.com/rust-lang/rust/issues/58533 . Closes #27794. r? @Amanieu
2020-08-01Remove `linked_list_extras` methods.Charles Lew-62/+10
2020-07-31make some vec_deque tests less exhaustive in MiriRalf Jung-6/+11
2020-07-31Auto merge of #74926 - Manishearth:rename-lint, r=jyn514bors-1/+0
Rename intra_doc_link_resolution_failure It should be plural to follow the conventions in https://github.com/rust-lang/rfcs/blob/master/text/0344-conventions-galore.md#lints
2020-07-30Rollup merge of #74782 - vorner:weak-into-raw-cnt-doc, r=dtolnayManish Goregaokar-20/+22
Don't use "weak count" around Weak::from_raw_ptr As `Rc/Arc::weak_count` returns 0 when having no strong counts, this could be confusing and it's better to avoid using that completely. Closes #73840.
2020-07-30Remove deny for intra doc link failures from library code, it's no longer ↵Manish Goregaokar-1/+0
necessary
2020-07-30Rename in libraryManish Goregaokar-1/+1
2020-07-30liballoc export ArrayChunksBastian Kauschke-0/+3
2020-07-29Rollup merge of #74902 - rust-lang:into_raw_non_null, r=dtolnayManish Goregaokar-91/+1
Remove deprecated unstable `{Box,Rc,Arc}::into_raw_non_null` functions FCP: https://github.com/rust-lang/rust/issues/47336#issuecomment-619369613
2020-07-29Rollup merge of #74852 - lzutao:inline-rm-tostring, r=nnethercoteManish Goregaokar-0/+3
Explain why inlining default ToString impl Trying to remove inline attribute from default ToString impl causes regression. Perf result at <https://github.com/rust-lang/rust/pull/74852#issuecomment-664812994>.
2020-07-29Remove deprecated unstable `{Box,Rc,Arc}::into_raw_non_null` functionsSimon Sapin-91/+1
FCP: https://github.com/rust-lang/rust/issues/47336#issuecomment-619369613
2020-07-29Stabilize `Vec::leak`Simon Sapin-3/+1
2020-07-29Make `Vec::leak` a method instead of an associated function.Simon Sapin-3/+3
The reason for `Box::leak` not to be a method (`Deref` to an arbitrary `T` which might have its own, different `leak` method) does not apply.
2020-07-29Link to syntax section when referencing itTomasz Miąsko-1/+1
2020-07-29Explain why inline default ToString implLzu Tao-0/+3
2020-07-28Remove into_slices and its unsafe blockStein Somers-10/+3
2020-07-28Don't use "weak count" around Weak::from_raw_ptrMichal 'vorner' Vaner-20/+22
As `Rc/Arc::weak_count` returns 0 when having no strong counts, this could be confusing and it's better to avoid using that completely. Closes #73840.
2020-07-27mv std libs to library/mark-0/+30426