-
Notifications
You must be signed in to change notification settings - Fork 12.8k
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 15 pull requests #73745
Rollup of 15 pull requests #73745
Commits on May 26, 2020
-
Add a fast path for
std::thread::panicking
.This is done by adding a global atomic variable (non-TLS) that counts how many threads are panicking. In order to check if the current thread is panicking, this variable is read and, if it is zero, no thread (including the one where `panicking` is being called) is panicking and `panicking` can return `false` immediately without needing to access TLS. If the global counter is not zero, the local counter is accessed from TLS to check if the current thread is panicking.
Configuration menu - View commit details
-
Copy full SHA for f03cf99 - Browse repository at this point
Copy the full SHA f03cf99View commit details
Commits on Jun 16, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 560a996 - Browse repository at this point
Copy the full SHA 560a996View commit details
Commits on Jun 20, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 1b47e8f - Browse repository at this point
Copy the full SHA 1b47e8fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 16e741c - Browse repository at this point
Copy the full SHA 16e741cView commit details
Commits on Jun 22, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 9766a93 - Browse repository at this point
Copy the full SHA 9766a93View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3c46e36 - Browse repository at this point
Copy the full SHA 3c46e36View commit details -
Configuration menu - View commit details
-
Copy full SHA for e84552e - Browse repository at this point
Copy the full SHA e84552eView commit details -
Configuration menu - View commit details
-
Copy full SHA for ef24faf - Browse repository at this point
Copy the full SHA ef24fafView commit details -
place non-obvious defaults on a separate line
See rust-lang#73538 (comment) for the motivation
Configuration menu - View commit details
-
Copy full SHA for b65ea1b - Browse repository at this point
Copy the full SHA b65ea1bView commit details
Commits on Jun 23, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 9bb414f - Browse repository at this point
Copy the full SHA 9bb414fView commit details
Commits on Jun 24, 2020
-
* Suggest potentially missing binop trait bound (fix rust-lang#73416) * Use structured suggestion for dereference in binop
Configuration menu - View commit details
-
Copy full SHA for 5aab1a9 - Browse repository at this point
Copy the full SHA 5aab1a9View commit details -
Configuration menu - View commit details
-
Copy full SHA for b23baa7 - Browse repository at this point
Copy the full SHA b23baa7View commit details -
Apply suggestions from code review Co-authored-by: Josh Triplett <josh@joshtriplett.org>
Configuration menu - View commit details
-
Copy full SHA for d8ea10c - Browse repository at this point
Copy the full SHA d8ea10cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 65becef - Browse repository at this point
Copy the full SHA 65becefView commit details -
Configuration menu - View commit details
-
Copy full SHA for d36d351 - Browse repository at this point
Copy the full SHA d36d351View commit details -
Configuration menu - View commit details
-
Copy full SHA for c2dfc25 - Browse repository at this point
Copy the full SHA c2dfc25View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4931996 - Browse repository at this point
Copy the full SHA 4931996View commit details -
Make
std::panicking::panic_count::is_zero
inline and move the slow ……path into a separate cold function.
Configuration menu - View commit details
-
Copy full SHA for 771a1d8 - Browse repository at this point
Copy the full SHA 771a1d8View commit details -
review comments: clean up code
* deduplicate logic * fix typos * remove unnecessary state
Configuration menu - View commit details
-
Copy full SHA for 09af184 - Browse repository at this point
Copy the full SHA 09af184View commit details -
Configuration menu - View commit details
-
Copy full SHA for a5a831f - Browse repository at this point
Copy the full SHA a5a831fView commit details -
Configuration menu - View commit details
-
Copy full SHA for eb726c0 - Browse repository at this point
Copy the full SHA eb726c0View commit details -
Configuration menu - View commit details
-
Copy full SHA for 367858a - Browse repository at this point
Copy the full SHA 367858aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 242a5cd - Browse repository at this point
Copy the full SHA 242a5cdView commit details -
Configuration menu - View commit details
-
Copy full SHA for 547d863 - Browse repository at this point
Copy the full SHA 547d863View commit details -
Generalize generator-debug test a bit
Don't be so reliant on particular line ordering (though FileCheck makes this hard in general, IMO). Also disable for MSVC.
Configuration menu - View commit details
-
Copy full SHA for 477ecc5 - Browse repository at this point
Copy the full SHA 477ecc5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2d652d9 - Browse repository at this point
Copy the full SHA 2d652d9View commit details -
Configuration menu - View commit details
-
Copy full SHA for fe3df64 - Browse repository at this point
Copy the full SHA fe3df64View commit details -
Split out async fn and generator test
This keeps FileCheck from tripping over unimportant differences in codegen.
Configuration menu - View commit details
-
Copy full SHA for 887fbd9 - Browse repository at this point
Copy the full SHA 887fbd9View commit details -
Suggest type param trait bound for binop only when appropriate
Verify that the binop trait *is* implemented for the types *if* all the involved type parameters are replaced with fresh inferred types. When this is the case, it means that the type parameter was indeed missing a trait bound. If this is not the case, provide a generic `note` refering to the type that doesn't implement the expected trait.
Configuration menu - View commit details
-
Copy full SHA for 8f40dae - Browse repository at this point
Copy the full SHA 8f40daeView commit details
Commits on Jun 25, 2020
-
Provide suggestions for some moved value errors
When encountering an used moved value where the previous move happened in a `match` or `if let` pattern, suggest using `ref`. Fix rust-lang#63988. When encountering a `&mut` value that is used in multiple iterations of a loop, suggest reborrowing it with `&mut *`. Fix rust-lang#62112.
Configuration menu - View commit details
-
Copy full SHA for 520461f - Browse repository at this point
Copy the full SHA 520461fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 3d09017 - Browse repository at this point
Copy the full SHA 3d09017View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2e3f517 - Browse repository at this point
Copy the full SHA 2e3f517View commit details -
Configuration menu - View commit details
-
Copy full SHA for 54293c1 - Browse repository at this point
Copy the full SHA 54293c1View commit details -
Configuration menu - View commit details
-
Copy full SHA for f27dcd7 - Browse repository at this point
Copy the full SHA f27dcd7View commit details -
Configuration menu - View commit details
-
Copy full SHA for eb6d9a4 - Browse repository at this point
Copy the full SHA eb6d9a4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 33302fa - Browse repository at this point
Copy the full SHA 33302faView commit details -
Configuration menu - View commit details
-
Copy full SHA for 25e864e - Browse repository at this point
Copy the full SHA 25e864eView commit details
Commits on Jun 26, 2020
-
Rollup merge of rust-lang#72617 - eduardosm:panicking, r=Amanieu
Add a fast path for `std::thread::panicking`. This is done by adding a global atomic variable (non-TLS) that counts how many threads are panicking. In order to check if the current thread is panicking, this variable is read and, if it is zero, no thread (including the one where `panicking` is being called) is panicking and `panicking` can return `false` immediately without needing to access TLS. If the global counter is not zero, the local counter is accessed from TLS to check if the current thread is panicking.
Configuration menu - View commit details
-
Copy full SHA for bf6134d - Browse repository at this point
Copy the full SHA bf6134dView commit details -
Rollup merge of rust-lang#72738 - mati865:self-contained-option, r=pe…
…trochenkov Self contained linking option With objects moved to self-contained directory by rust-lang#72999 we can now add option to control whether to use self-contained on native linkage mode.
Configuration menu - View commit details
-
Copy full SHA for e98f991 - Browse repository at this point
Copy the full SHA e98f991View commit details -
Rollup merge of rust-lang#72770 - crlf0710:mixed_script_confusable, r…
…=Manishearth Implement mixed script confusable lint. This implements the mixed script confusable lint defined in RFC 2457. This is blocked on rust-lang#72069 and unicode-rs/unicode-security#13, and will need a Cargo.toml version bump after those are resolved. The lint message warning is sub-optimal for now. We'll need a mechanism to properly output `AugmentScriptSet` to screen, this is to be added in `unicode-security` crate. r? @Manishearth
Configuration menu - View commit details
-
Copy full SHA for 885776e - Browse repository at this point
Copy the full SHA 885776eView commit details -
Rollup merge of rust-lang#73414 - lzutao:slice_strip, r=dtolnay
Implement `slice_strip` feature Tracking issue: rust-lang#73413
Configuration menu - View commit details
-
Copy full SHA for 2196bab - Browse repository at this point
Copy the full SHA 2196babView commit details -
Rollup merge of rust-lang#73418 - doctorn:variants-intrinsic, r=kennytm
Add unstable `core::mem::variant_count` intrinsic Adds a new `const fn` intrinsic which can be used to determine the number of variants in an `enum`. I've shown this to a couple of people and they invariably ask 'why on earth?', but there's actually a very neat use case: At the moment, if you want to create an opaque array type that's indexed by an `enum` with one element for each variant, you either have to hard-code the number of variants, add a `LENGTH` variant or use a `Vec`, none of which are suitable in general (number of variants could change; pattern matching `LENGTH` becomes frustrating; might not have `alloc`). By including this intrinsic, it becomes possible to write the following: ```rust #[derive(Copy, Clone)] enum OpaqueIndex { A = 0, B, C, } struct OpaqueVec<T>(Box<[T; std::mem::num_variants::<OpaqueIndex>()]>); impl<T> std::ops::Index<OpaqueIndex> for OpaqueVec<T> { type Output = T; fn index(&self, idx: OpaqueIndex) -> &Self::Output { &self.0[idx as usize] } } ``` (We even have a use cases for this in `rustc` and I plan to use it to re-implement the lang-items table.)
Configuration menu - View commit details
-
Copy full SHA for e3807d0 - Browse repository at this point
Copy the full SHA e3807d0View commit details -
Rollup merge of rust-lang#73460 - tmandry:variant-lineinfo, r=oli-obk
Emit line info for generator variants Debuggers should be able to read a generator / async fn state machine and show the line it's suspended at. Eventually, this could grow into an "async stack trace" feature of sorts. While no debugger support this for Rust today, this PR adds the debuginfo necessary for that support to exist. [This gist](https://gist.github.com/tmandry/6d7004fa008684f76809208847459f9b) shows the resulting debuginfo for a simple example. Here's a snippet: ``` 0x00000986: DW_TAG_variant DW_AT_discr_value (0x03) 0x00000988: DW_TAG_member DW_AT_name ("3") DW_AT_type (0x000009bc "Suspend0") DW_AT_decl_file ("/home/tmandry/code/playground/generator-simple.rs") DW_AT_decl_line (6) DW_AT_alignment (8) DW_AT_data_member_location (0x00) ``` The file and line have been added here. The line currently points to the beginning of the statement containing the yield (or await), because that's what the MIR source info points to for the yield terminator. (We may want to point to the yield or await line specifically, but that can be done independently of this change.) Debuggers don't know how to use this kind of info yet. However, we're hoping to experiment with adding such support to Fuchsia's debugger. It would be exciting if someone were interested in adding similar to support to gdb/lldb. r? @oli-obk cc @eddyb @jonas-schievink Part of rust-lang#73524.
Configuration menu - View commit details
-
Copy full SHA for 673d7ca - Browse repository at this point
Copy the full SHA 673d7caView commit details -
Rollup merge of rust-lang#73534 - estebank:borrowck-suggestions, r=ma…
…tthewjasper Provide suggestions for some moved value errors When encountering an used moved value where the previous move happened in a `match` or `if let` pattern, suggest using `ref`. Fix rust-lang#63988. When encountering a `&mut` value that is used in multiple iterations of a loop, suggest reborrowing it with `&mut *`. Fix rust-lang#62112.
Configuration menu - View commit details
-
Copy full SHA for 050cb83 - Browse repository at this point
Copy the full SHA 050cb83View commit details -
Rollup merge of rust-lang#73538 - tshepang:fix-example, r=nikomatsakis
make commented examples use valid syntax, and be more consistent
Configuration menu - View commit details
-
Copy full SHA for 59768d4 - Browse repository at this point
Copy the full SHA 59768d4View commit details -
Rollup merge of rust-lang#73581 - GuillaumeGomez:add-0766, r=varkor
Create 0766 error code
Configuration menu - View commit details
-
Copy full SHA for d2f7d6b - Browse repository at this point
Copy the full SHA d2f7d6bView commit details -
Rollup merge of rust-lang#73619 - poliorcetics:mod-keyword, r=stevekl…
…abnik Document the mod keyword Partial fix for rust-lang#34601 . Documentation for the `mod` keyword.
Configuration menu - View commit details
-
Copy full SHA for f1ca34e - Browse repository at this point
Copy the full SHA f1ca34eView commit details -
Rollup merge of rust-lang#73621 - poliorcetics:mut-keyword, r=stevekl…
…abnik Document the mut keyword Partial fix for rust-lang#34601. Documentation for the `mut` keyword. I think it's okay for it to be quite short, this is not the book not the reference, but if you find something is missing, do not hesitate to tell me.
Configuration menu - View commit details
-
Copy full SHA for 7f1eb2e - Browse repository at this point
Copy the full SHA 7f1eb2eView commit details -
Rollup merge of rust-lang#73648 - poliorcetics:return-keyword, r=josh…
…triplett Document the return keyword Partial fix of rust-lang#34601. This documents the `return` keyword with two short example to explain it is not needed for the last expression in a function and a long example to show its use when interrupting a function execution early. I did not put a link to the reference since the only link I found was https://doc.rust-lang.org/stable/reference/expressions/return-expr.html#return-expressions. @rustbot modify labels: T-doc,C-enhancement
Configuration menu - View commit details
-
Copy full SHA for 7b744e1 - Browse repository at this point
Copy the full SHA 7b744e1View commit details -
Rollup merge of rust-lang#73673 - ehuss:fix-ptr-docs, r=oli-obk
Fix ptr doc warnings. rust-lang#73398 added some stray backtick lines which cause warnings when the docs are built.
Configuration menu - View commit details
-
Copy full SHA for d51c959 - Browse repository at this point
Copy the full SHA d51c959View commit details -
Rollup merge of rust-lang#73674 - estebank:op-trait-bound-suggestion,…
… r=davidtwco Tweak binop errors * Suggest potentially missing binop trait bound (fix rust-lang#73416) * Use structured suggestion for dereference in binop
Configuration menu - View commit details
-
Copy full SHA for f16d62c - Browse repository at this point
Copy the full SHA f16d62cView commit details -
Rollup merge of rust-lang#73687 - GuillaumeGomez:cleanup-e0701, r=Dyl…
…an-DPC Clean up E0701 explanation r? @Dylan-DPC
Configuration menu - View commit details
-
Copy full SHA for 351486a - Browse repository at this point
Copy the full SHA 351486aView commit details