-
Notifications
You must be signed in to change notification settings - Fork 12.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rollup of 9 pull requests #72747
Rollup of 9 pull requests #72747
Commits on May 21, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 34b5118 - Browse repository at this point
Copy the full SHA 34b5118View commit details
Commits on May 22, 2020
-
Configuration menu - View commit details
-
Copy full SHA for a9199de - Browse repository at this point
Copy the full SHA a9199deView commit details
Commits on May 25, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 68bab3e - Browse repository at this point
Copy the full SHA 68bab3eView commit details -
Fix typo in src/libcore/num/f32.rs
Co-authored-by: bluss <bluss@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for b6eec22 - Browse repository at this point
Copy the full SHA b6eec22View commit details -
Fix typo in src/libcore/num/f32.rs
Co-authored-by: bluss <bluss@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for d6650e0 - Browse repository at this point
Copy the full SHA d6650e0View commit details -
Configuration menu - View commit details
-
Copy full SHA for bd68de8 - Browse repository at this point
Copy the full SHA bd68de8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6973fd7 - Browse repository at this point
Copy the full SHA 6973fd7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8bc31ff - Browse repository at this point
Copy the full SHA 8bc31ffView commit details -
Rename upvar_list to closure_captures
As part of supporting RFC 2229, we will be capturing all the places that are mentioned in a closure. Currently the upvar_list field gives access to a FxIndexMap<HirId, Upvar> map. Eventually this will change, with the upvar_list having a more general structure that expresses captured paths, not just the mentioned upvars. We will make those changes in subsequent PRs. This commit modifies the name of the upvar_list map to closure_captures in TypeckTables. Co-authored-by: Dhruv Jauhar <dhruvjhr@gmail.com> Co-authored-by: Aman Arora <me@aman-arora.com>
Configuration menu - View commit details
-
Copy full SHA for c3dc8c4 - Browse repository at this point
Copy the full SHA c3dc8c4View commit details
Commits on May 26, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 66da735 - Browse repository at this point
Copy the full SHA 66da735View commit details -
Configuration menu - View commit details
-
Copy full SHA for ca722b9 - Browse repository at this point
Copy the full SHA ca722b9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 125f0ab - Browse repository at this point
Copy the full SHA 125f0abView commit details -
Configuration menu - View commit details
-
Copy full SHA for 4b87f97 - Browse repository at this point
Copy the full SHA 4b87f97View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6315d0c - Browse repository at this point
Copy the full SHA 6315d0cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 6ddbef1 - Browse repository at this point
Copy the full SHA 6ddbef1View commit details
Commits on May 27, 2020
-
Prior art: `rust_analyzer` uses [`Parser::eat`](https://github.com/rust-analyzer/rust-analyzer/blob/50f4ae798b7c54d417ee88455b87fd0477473150/crates/ra_parser/src/parser.rs#L94), which is `next_if` specialized to `|y| next_if(|x| x == y)`. Basically every other parser I've run into in Rust has an equivalent of Parser::eat; see for example - [cranelift](https://github.com/bytecodealliance/wasmtime/blob/94190d57244b26baf36629c88104b0ba516510cf/cranelift/reader/src/parser.rs#L498) - [rcc](https://github.com/jyn514/rcc/blob/a8159c3904a0c950fbba817bf9109023fad69033/src/parse/mod.rs#L231) - [crunch](https://github.com/Kixiron/crunch-lang/blob/8521874fab8a7d62bfa7dea8bd1da94b63e31be8/crates/crunch-parser/src/parser/mod.rs#L213-L241)
Configuration menu - View commit details
-
Copy full SHA for 822ad87 - Browse repository at this point
Copy the full SHA 822ad87View commit details
Commits on May 28, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 42a4f5a - Browse repository at this point
Copy the full SHA 42a4f5aView commit details
Commits on May 29, 2020
-
SocketAddr(V4|V6)?
::Display now correctly pads its contentIpAddr and friends pad when displaying; SocketAddr now does this as well
Configuration menu - View commit details
-
Copy full SHA for 813ce7a - Browse repository at this point
Copy the full SHA 813ce7aView commit details -
Configuration menu - View commit details
-
Copy full SHA for defbd84 - Browse repository at this point
Copy the full SHA defbd84View commit details -
Configuration menu - View commit details
-
Copy full SHA for 06a97a0 - Browse repository at this point
Copy the full SHA 06a97a0View commit details -
Configuration menu - View commit details
-
Copy full SHA for 12c03db - Browse repository at this point
Copy the full SHA 12c03dbView commit details -
Configuration menu - View commit details
-
Copy full SHA for 3f13d97 - Browse repository at this point
Copy the full SHA 3f13d97View commit details -
Configuration menu - View commit details
-
Copy full SHA for b3342b4 - Browse repository at this point
Copy the full SHA b3342b4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7c63014 - Browse repository at this point
Copy the full SHA 7c63014View commit details -
Configuration menu - View commit details
-
Copy full SHA for 74fcbfb - Browse repository at this point
Copy the full SHA 74fcbfbView commit details -
Configuration menu - View commit details
-
Copy full SHA for 4dc5661 - Browse repository at this point
Copy the full SHA 4dc5661View commit details -
Rollup merge of rust-lang#72310 - jyn514:peekable-next-if, r=dtolnay
Add Peekable::next_if Prior art: `rust_analyzer` uses [`Parser::eat`](https://github.com/rust-analyzer/rust-analyzer/blob/50f4ae798b7c54d417ee88455b87fd0477473150/crates/ra_parser/src/parser.rs#L94), which is `next_if` specialized to `|y| self.next_if(|x| x == y)`. Basically every other parser I've run into in Rust has an equivalent of `Parser::eat`; see for example - [cranelift](https://github.com/bytecodealliance/wasmtime/blob/94190d57244b26baf36629c88104b0ba516510cf/cranelift/reader/src/parser.rs#L498) - [rcc](https://github.com/jyn514/rcc/blob/a8159c3904a0c950fbba817bf9109023fad69033/src/parse/mod.rs#L231) - [crunch](https://github.com/Kixiron/crunch-lang/blob/8521874fab8a7d62bfa7dea8bd1da94b63e31be8/crates/crunch-parser/src/parser/mod.rs#L213-L241) Possible extensions: A specialization of `next_if` to using `Eq::eq`. The only difficulty here is the naming - maybe `next_if_eq`? Alternatives: - Instead of `func: impl FnOnce(&I::Item) -> bool`, use `func: impl FnOnce(I::Item) -> Option<I::Item>`. This has the advantage that `func` can move the value if necessary, but means that there is no guarantee `func` will return the same value it was given. - Instead of `fn next_if(...) -> Option<I::Item>`, use `fn next_if(...) -> bool`. This makes the common case of `iter.next_if(f).is_some()` easier, but makes the unusual case impossible. Bikeshedding on naming: - `next_if` could be renamed to `consume_if` (to match `eat`, but a little more formally) - `next_if_eq` could be renamed to `consume`. This is more concise but less self-explanatory if you haven't written a lot of parsers. - Both of the above, but with `consume` replaced by `eat`.
Configuration menu - View commit details
-
Copy full SHA for cbcc4c4 - Browse repository at this point
Copy the full SHA cbcc4c4View commit details -
Rollup merge of rust-lang#72383 - DarkEld3r:issue-72322, r=matthewjasper
Suggest using std::mem::drop function instead of explicit destructor call I would prefer to give a better suggestion that includes code example, but I'm currently stuck on getting the correct span for that. Closes rust-lang#72322.
Configuration menu - View commit details
-
Copy full SHA for 9c1f203 - Browse repository at this point
Copy the full SHA 9c1f203View commit details -
Rollup merge of rust-lang#72398 - Lucretiel:ip-socket-display, r=Mark…
…-Simulacrum SocketAddr and friends now correctly pad its content Currently, `IpAddr` and friends correctly respect formatting parameters when printing via `Display`. This PR makes SocketAddr and friends do the same thing.
Configuration menu - View commit details
-
Copy full SHA for 8bce240 - Browse repository at this point
Copy the full SHA 8bce240View commit details -
Rollup merge of rust-lang#72465 - tmiasko:liveness-upvars, r=nikomats…
…akis Warn about unused captured variables Include captured variables in liveness analysis. Warn when captured variables are unused (but possibly read or written to). Warn about dead assignments to captured variables. Fixes rust-lang#37707. Fixes rust-lang#47128. Fixes rust-lang#63220.
Configuration menu - View commit details
-
Copy full SHA for 9ef6227 - Browse repository at this point
Copy the full SHA 9ef6227View commit details -
Rollup merge of rust-lang#72568 - golddranks:add_total_cmp_to_floats,…
… r=sfackler Implement total_cmp for f32, f64 # Overview * Implements method `total_cmp` on `f32` and `f64`. This method implements a float comparison that, unlike the standard `partial_cmp`, is total (defined on all values) in accordance to the IEEE 754 (rev 2008) §5.10 `totalOrder` predicate. * The method has an API similar to `cmp`: `pub fn total_cmp(&self, other: &Self) -> crate::cmp::Ordering { ... }`. * Implements tests. * Has documentation. # Justification for the API * Total ordering for `f32` and `f64` has been discussed many time before: * https://internals.rust-lang.org/t/pre-pre-rfc-range-restricting-wrappers-for-floating-point-types/6701 * rust-lang/rfcs#1249 * rust-lang#53938 * rust-lang#5585 * The lack of total ordering leads to frequent complaints, especially from people new to Rust. * This is an ergonomics issue that needs to be addressed. * However, the default behaviour of implementing only `PartialOrd` is intentional, as relaxing it might lead to correctness issues. * Most earlier implementations and discussions have been focusing on a wrapper type that implements trait `Ord`. Such a wrapper type is, however not easy to add because of the large API surface added. * As a minimal step that hopefully proves uncontroversial, we can implement a stand-alone method `total_cmp` on floating point types. * I expect adding such methods should be uncontroversial because... * Similar methods on `f32` and `f64` would be warranted even in case stdlib would provide a wrapper type that implements `Ord` some day. * It implements functionality that is standardised. (IEEE 754, 2008 rev. §5.10 Note, that the 2019 revision relaxes the ordering. The way we do ordering in this method conforms to the stricter 2008 standard.) * With stdlib APIs such as `slice::sort_by` and `slice::binary_search_by` that allow users to provide a custom ordering criterion, providing additional helper methods is a minimal way of adding ordering functionality. * Not also does it allow easily using aforementioned APIs, it also provides an easy and well-tested primitive for the users and library authors to implement an `Ord`-implementing wrapper, if needed.
Configuration menu - View commit details
-
Copy full SHA for c09f0eb - Browse repository at this point
Copy the full SHA c09f0ebView commit details -
Rollup merge of rust-lang#72572 - JohnTitor:add-tests, r=matthewjasper
Add some regression tests Closes rust-lang#68532 Closes rust-lang#70121 Closes rust-lang#71042 CC rust-lang#56445 r? @matthewjasper since they (except for rust-lang#71042) are related to rust-lang#72362.
Configuration menu - View commit details
-
Copy full SHA for 89cb4d7 - Browse repository at this point
Copy the full SHA 89cb4d7View commit details -
Rollup merge of rust-lang#72591 - sexxi-goose:rename_upvar_list-to-cl…
…osure_captures, r=matthewjasper librustc_middle: Rename upvar_list to closure_captures As part of supporting RFC 2229, we will be capturing all the places that are mentioned in a closure. Currently the `upvar_list` field gives access to a `FxIndexMap<HirId, Upvar>` map. Eventually this will change, with the `upvar_list` having a more general structure that expresses captured paths, not just the mentioned `upvars`. We will make those changes in subsequent PRs. This commit modifies the name of the `upvar_list` map to `closure_captures` in `TypeckTables`. r? @matthewjasper
Configuration menu - View commit details
-
Copy full SHA for ed80e8e - Browse repository at this point
Copy the full SHA ed80e8eView commit details -
Rollup merge of rust-lang#72701 - pickfire:patch-1, r=Mark-Simulacrum
Fix grammar in liballoc raw_vec
Configuration menu - View commit details
-
Copy full SHA for 510793b - Browse repository at this point
Copy the full SHA 510793bView commit details -
Rollup merge of rust-lang#72731 - GuillaumeGomez:cleanup-e0619, r=Dyl…
…an-DPC Add missing empty line in E0619 explanation r? @Dylan-DPC
Configuration menu - View commit details
-
Copy full SHA for 180a92c - Browse repository at this point
Copy the full SHA 180a92cView commit details