-
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 16 pull requests #62182
Rollup of 16 pull requests #62182
Conversation
… and link some more stuff
Co-Authored-By: Mazdak Farrokhzad <twingoow@gmail.com>
Co-Authored-By: Taiki Endo <te316e89@gmail.com> Co-Authored-By: Jonas Schievink <jonasschievink@gmail.com> Co-Authored-By: Torbjørn Birch Moltu <t.b.moltu@lyse.net>
Lexer uses Symbols for a lot of stuff, not only for identifiers, so the "name" terminology is just confusing.
Otherwise it ends up writing the file byte at a time, which can be very slow for large outputs.
We've seen quite a few issues with spurious illegal instructions getting executed on OSX on CI recently. For whatever reason `cc` itself is executing an illegal instruction and we're not really getting any other information about what's happening. Since we're already retrying the linker when it segfaults, let's just continue to retry everything and automatically reinvoke the linker when it fails with an illegal instruction.
improve pinning projection docs This tries to improve the explanation of structural pinning and pinning projections based on [this URLO thread](https://users.rust-lang.org/t/when-is-it-safe-to-move-a-member-value-out-of-a-pinned-future/28182). Fixes rust-lang#61272.
Remove `FnBox` Remove `FnBox` since we now have `Box<dyn FnOnce>`. Closes rust-lang#28796. r? @cramertj
…jasper Add suggestion for missing `.await` keyword This commit adds a suggestion diagnostic for missing `.await`. In order to do this, the trait `Future` is promoted to a lang item. Compiling code of the form: ```rust #![feature(async_await)] fn take_u32(x: u32) {} async fn make_u32() -> u32 { 22 } async fn foo() { let x = make_u32(); take_u32(x) } fn main() {} ``` Will now result in the suggestion: ``` error[E0308]: mismatched types --> src/main.rs:11:18 | 11 | take_u32(x) | ^ | | | expected u32, found opaque type | help: consider using `.await` here: `x.await` | = note: expected type `u32` found type `impl std::future::Future` ``` This commit does not cover chained expressions and therefore only covers the case originally pointed out in rust-lang#61076. Cases I can think of that still need to be covered: - [ ] Return places for functions - [ ] Field access - [ ] Method invocation I'm planning to submit PRs for each of these separately as and when I have figured them out.
Updated RELEASES.md for 1.36.0 [Rendered](https://github.com/XAMPPRocky/rust/blob/master/RELEASES.md) r? @Mark-Simulacrum cc @rust-lang/release
call out explicitly that general read needs to be called with an initialized buffer
Add more tests for async/await I'll follow up with more of these, but here's an initial few. r? @Centril
refactor lexer to use idiomatic borrowing
…g,oli-obk,Centril Implement mem::{zeroed,uninitialized} in terms of MaybeUninit. Refs rust-lang#62061 r? @oli-obk
Don't ICE on item in `.await` expression The code for lowering a `.await` expression missed that item IDs may already have been assigned for items inside of an `async` block, or for closures. This change means we no longer exit early after finding a `.await` in a block that isn't `async` and instead just emit the error. This avoids an ICE generated due to item IDs not being densely generated. (The `YieldSource` of the generated `yield` expression is used to avoid errors generated about having `yield` expressions outside of generator literals.) r? @cramertj Resolves rust-lang#62009 and resolves rust-lang#61685
Remove old fixme fixed in rust-lang#60160 r? @Centril
Add regression test for MIR drop generation in async loops Fixes rust-lang#61986. r? @Centril
Update books Update nomicon, reference, book, rust-by-example, rustc-guide ## nomicon 2 commits in c656171b749b7307f21371dd0d3278efee5573b8..341c221116a8b9f1010cf1eece952b80c5ec7f54 2019-04-25 15:31:26 -0400 to 2019-06-19 09:08:47 -0700 - Fix some links. - cleanup the intro, and clarify how it relates to the reference (rust-lang/nomicon#140) ## reference 2 commits in 08ae27a..7a5aab5 2019-06-17 11:24:13 -0700 to 2019-06-20 17:38:52 +0200 - Update for cfg on generic parameter. (rust-lang/reference#624) - Link to "const functions" section from constant expressions list (rust-lang/reference#623) ## book 2 commits in 9aacfcc4c5b102c8cda195932addefd32fe955d2..6c0d83499c8e77e06a71d28c5e1adccec278d4f3 2019-06-16 21:27:26 -0400 to 2019-06-23 20:25:30 -0400 - fancy quotes - Edits made in copyedit ## rust-by-example 2 commits in b27472962986e85c94f4183b1a6d2207660d3ed6..62b3ff2cb44dd8b648c3ef2a9347c3706d148014 2019-06-17 15:52:07 -0300 to 2019-06-24 09:17:21 -0300 - A couple of fixes for the `Box, stack and heap` chapter. (rust-lang/rust-by-example#1206) - [typo] Note, that it is -> Note that, it is (rust-lang/rust-by-example#1207) ## rustc-guide 38 commits in f55e97c145cf37fd664db2e0e2f2d05df328bf4f..abf512fc9cc969dcbea69aa15b44586bbeb13c2d 2019-06-15 17:29:12 -0500 to 2019-06-26 11:05:58 -0500 - fix long line - add `point` to the glossary and link a use of it - fix indentation - Update src/borrow_check/region_inference/placeholders_and_universes.md - Update src/borrow_check/region_inference/placeholders_and_universes.md - Update src/borrow_check/region_inference/placeholders_and_universes.md - Update src/borrow_check/region_inference/member_constraints.md - Update src/borrow_check/region_inference/constraint_propagation.md - Update src/borrow_check/region_inference/member_constraints.md - Update src/borrow_check/region_inference/constraint_propagation.md - Update src/borrow_check/region_inference/member_constraints.md - Update src/borrow_check/region_inference/member_constraints.md - Update src/borrow_check/region_inference/lifetime_parameters.md - Update src/borrow_check/region_inference/member_constraints.md - Update src/borrow_check/region_inference/constraint_propagation.md - Update src/borrow_check/region_inference/constraint_propagation.md - Update src/borrow_check/region_inference/constraint_propagation.md - Update src/borrow_check/region_inference/constraint_propagation.md - Update src/borrow_check/region_inference/constraint_propagation.md - Update src/borrow_check/region_inference/constraint_propagation.md - Update src/borrow_check/region_inference/constraint_propagation.md - Update src/borrow_check/region_inference/lifetime_parameters.md - Update src/borrow_check/region_inference/lifetime_parameters.md - Update src/borrow_check/region_inference/lifetime_parameters.md - Update src/borrow_check/region_inference/constraint_propagation.md - adjust overview slightly - describe region inference and member constraints in some detail - start filling out the constraint propagation chapter in more detail - break out parts of the region inference chapter into sub-chapters - fix typo - avoid ftp links - fix broken links - add bibligraphy appendix - Update to mdbook-linkcheck 0.3.0 - Update mdbook - Change stage0 cfg_attr to bootstrap - fix compiler-team - Added Rustc Debugger Support Chapter
…ochenkov Remove outdated question_mark_macro_sep lint
save-analysis: use buffered writes Otherwise it ends up writing the file byte at a time, which can be very slow for large outputs. cc @ljw1004
rustc: Retry SIGILL linker invocations We've seen quite a few issues with spurious illegal instructions getting executed on OSX on CI recently. For whatever reason `cc` itself is executing an illegal instruction and we're not really getting any other information about what's happening. Since we're already retrying the linker when it segfaults, let's just continue to retry everything and automatically reinvoke the linker when it fails with an illegal instruction.
Update RLS Merged PRs: * fix(cmd): make clear_env_rust_log default to false (rust-lang/rls#1486) - Retain `RUST_LOG` in `rls --cli` mode * Pass --file-lines to rustfmt only if specified (rust-lang/rls#1497) - Fix entire-file formatting when using external rustfmt (specified via `rustfmt_path` config) * Ensure that --error-format is only passed once to `rustc` (rust-lang/rls#1500) - Unbreaks RLS when used together with Cargo [pipelining build](rust-lang#60988) feature (@alexcrichton I'd consider this a stabilization blocker, mind adding it to the tracking issue for the record? 🙇♂️ )
@bors r+ p=16 rollup=never |
📌 Commit 24a356f has been approved by |
⌛ Testing commit 24a356f with merge a0de724a4ddcc990b565da246e347a4c59456397... |
💔 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:
FnBox
#62043 (RemoveFnBox
).await
keyword #62067 (Add suggestion for missing.await
keyword).await
expression #62152 (Don't ICE on item in.await
expression)Failed merges:
r? @ghost