-
Notifications
You must be signed in to change notification settings - Fork 13.4k
Rollup of 17 pull requests #59921
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Rollup of 17 pull requests #59921
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
@bors r+ p=17 |
📌 Commit 910c719 has been approved by |
⌛ Testing commit 910c719 with merge 8a1354a2359211a04d831f3d4b79c8a0f962d45f... |
💔 Test failed - checks-travis |
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 |
Successful merges:
alloc
crate. #59675 (Stabilize thealloc
crate.)Span
from 4 bytes to 8 bytes. #59693 (IncreaseSpan
from 4 bytes to 8 bytes.)IsNotConst
naming #59796 (RetireIsNotConst
naming)FnBox
usages from libstd. #59818 (EliminateFnBox
usages from libstd.){read,write}_vectored
for more types #59852 (std: Add{read,write}_vectored
for more types)-Zprint-type-size
output, sort enum variants by size. #59899 (In-Zprint-type-size
output, sort enum variants by size.)Failed merges:
r? @ghost