Closed
Conversation
This increases the size of some important types, such as `ast::Expr` and `mir::Statement`. However, it drastically reduces how much the interner is used, and the fields are more natural sizes that don't require bit operations to extract. As a result, instruction counts drop across a range of workloads, by as much as 12% for incremental "check" builds of `script-servo`. Peak memory usage goes up a little for some cases, but down by more for some other cases -- as much as 18% for non-incremental builds of `packed-simd`. The commit also: - removes the `repr(packed)`, because it has negligible effect, but can cause undefined behaviour; - replaces explicit impls of common traits (`Copy`, `PartialEq`, etc.) with derived ones.
It is now exactly equivalent to lookup_char_pos.
Implicit promotion on the other hand has very strict rules on what may be done
- Make links relative. - Adjust links from old 2018-edition book. - Fix broken link in `let` docs.
This commit implements the `{read,write}_vectored` methods on more types
in the standard library, namely:
* `std::fs::File`
* `std::process::ChildStd{in,out,err}`
* `std::io::Std{in,out,err}`
* `std::io::Std{in,out,err}Lock`
* `std::io::Std{in,out,err}Raw`
Where supported the OS implementations hook up to native support,
otherwise it falls back to the already-defaulted implementation.
It's useful to see the biggest variants first.
This implements RFC 2480: * rust-lang/rfcs#2480 * https://github.com/rust-lang/rfcs/blob/master/text/2480-liballoc.md Closes rust-lang#27783
…hton Stabilize the `alloc` crate. This implements RFC 2480: * rust-lang/rfcs#2480 * https://github.com/rust-lang/rfcs/blob/master/text/2480-liballoc.md Closes rust-lang#27783
…enkov Increase `Span` from 4 bytes to 8 bytes. This increases the size of some important types, such as `ast::Expr` and `mir::Statement`. However, it drastically reduces how much the interner is used, and the fields are more natural sizes that don't require bit operations to extract. As a result, instruction counts drop across a range of workloads, by as much as 10% for `script-servo` incremental builds. Peak memory usage goes up a little for some cases, but down by more for some other cases -- as much as 18% for non-incremental builds of `packed-simd`. The commit also: - removes the `repr(packed)`, because it has negligible effect, but can cause undefined behaviour; - replaces explicit impls of common traits (`Copy`, `PartialEq`, etc.) with derived ones. r? @petrochenkov
…-mut, r=pnkfelix Mark variables captured by reference as mutable correctly Closes rust-lang#59620 r? @pnkfelix
remove lookup_char_pos_adj It is now exactly equivalent to lookup_char_pos.
…k, r=ehuss Copy book.toml unstable book generator Solves rust-lang#59554 and adds a book title to the unstable book. I assume that [copy_recursive](https://github.com/rust-lang/rust/blob/acd8dd6a50d505057a7d7ad8d0d7a4c2bd274200/src/tools/unstable-book-gen/src/main.rs#L105) will take files regardless of their type (`.md` or `.toml`). Although I had a hard time time testing it. A second pair of eyes is definitely needed.
Limit dylib symbols This makes `windows-gnu` match the behavior of `windows-msvc`. It probably doesn't make sense to export these symbols on other platforms either.
Retire `IsNotConst` naming This naming scheme caused a lot of confusion lately (including ICEs) due to misrefactored code. Also clean up the initialization code for said flag. r? @eddyb previous discussions: rust-lang#58784 (comment) rust-lang#58403 (comment)
Clean up jobserver integration cc @alexcrichton
…cramertj Eliminate `FnBox` usages from libstd.
Fix links on keyword docs. - Make links relative. - Adjust links from old 2018-edition book. - Fix broken link in `let` docs.
…acrum Re-export NonZero signed variant in std Closes rust-lang#59834 .
std: Add `{read,write}_vectored` for more types
This commit implements the `{read,write}_vectored` methods on more types
in the standard library, namely:
* `std::fs::File`
* `std::process::ChildStd{in,out,err}`
* `std::io::Std{in,out,err}`
* `std::io::Std{in,out,err}Lock`
* `std::io::Std{in,out,err}Raw`
Where supported the OS implementations hook up to native support,
otherwise it falls back to the already-defaulted implementation.
…-type-decl, r=QuietMisdreavus Fix attributes position in type declaration Fixes rust-lang#59797. r? @rust-lang/rustdoc
…Centril Make duplicate matcher bindings a hard error r? @Centril Closes rust-lang#57742
Use SecRandomCopyBytes instead of /dev/urandom on MacOS SecRandomCopyBytes is [available since MacOS 10.7](https://developer.apple.com/documentation/security/1399291-secrandomcopybytes?language=objc) which is the minimum supported version and which was suggested in rust-lang#58901 (comment) is the earliest version currently in use. This matches the behaviour of other platforms which have a random number generator syscall available.
…ize, r=pnkfelix In `-Zprint-type-size` output, sort enum variants by size. It's useful to see the biggest variants first. r? @pnkfelix
MaybeUninit: remove deprecated functions
Contributor
Author
|
@bors r+ p=17 |
Collaborator
|
📌 Commit 910c719 has been approved by |
Collaborator
|
⌛ Testing commit 910c719 with merge 8a1354a2359211a04d831f3d4b79c8a0f962d45f... |
Collaborator
|
💔 Test failed - checks-travis |
Contributor
|
The job Click to expand the log.I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact |
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Successful merges:
alloccrate. #59675 (Stabilize thealloccrate.)Spanfrom 4 bytes to 8 bytes. #59693 (IncreaseSpanfrom 4 bytes to 8 bytes.)IsNotConstnaming #59796 (RetireIsNotConstnaming)FnBoxusages from libstd. #59818 (EliminateFnBoxusages from libstd.){read,write}_vectoredfor more types #59852 (std: Add{read,write}_vectoredfor more types)-Zprint-type-sizeoutput, sort enum variants by size. #59899 (In-Zprint-type-sizeoutput, sort enum variants by size.)Failed merges:
r? @ghost