-
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 8 pull requests #81593
Rollup of 8 pull requests #81593
Commits on Jan 22, 2021
-
Don't link with --export-dynamic on wasm32-wasi
Remove --export-dynamic from the link arguments on the wasm32-wasi target, as it emits spurious exports and increases code size. Leave it in place for wasm32-unknown-unknown and wasm32-unknown-emscripten. Even though it isn't a great solution there, users are likely depending on its behavior there.
Configuration menu - View commit details
-
Copy full SHA for 9abcfa5 - Browse repository at this point
Copy the full SHA 9abcfa5View commit details
Commits on Jan 24, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 77a9e3e - Browse repository at this point
Copy the full SHA 77a9e3eView commit details
Commits on Jan 27, 2021
-
Configuration menu - View commit details
-
Copy full SHA for fe39653 - Browse repository at this point
Copy the full SHA fe39653View commit details
Commits on Jan 29, 2021
-
Configuration menu - View commit details
-
Copy full SHA for d1727ed - Browse repository at this point
Copy the full SHA d1727edView commit details -
Process mentioned upvars for analysis first pass after ExprUseVisitor
- This allows us add fake information after handling migrations if needed. - Capture analysis also priortizes what we see earlier, which means fake information should go in last.
Configuration menu - View commit details
-
Copy full SHA for 2c651eb - Browse repository at this point
Copy the full SHA 2c651ebView commit details -
Configuration menu - View commit details
-
Copy full SHA for 36352d2 - Browse repository at this point
Copy the full SHA 36352d2View commit details -
Configuration menu - View commit details
-
Copy full SHA for d30a5bf - Browse repository at this point
Copy the full SHA d30a5bfView commit details -
Configuration menu - View commit details
-
Copy full SHA for 9ac023d - Browse repository at this point
Copy the full SHA 9ac023dView commit details -
Configuration menu - View commit details
-
Copy full SHA for f106e18 - Browse repository at this point
Copy the full SHA f106e18View commit details -
Configuration menu - View commit details
-
Copy full SHA for 11abaa1 - Browse repository at this point
Copy the full SHA 11abaa1View commit details -
Restrict precision of captures with
capture_disjoint_fields
set- No Derefs in move closure, this will result in value behind a reference getting moved. - No projections are applied to raw pointers, since these require unsafe blocks. We capture them completely. Motivations for these are recorded here: https://hackmd.io/71qq-IOpTNqzMkPpAI1dVg?view
Configuration menu - View commit details
-
Copy full SHA for b421cd5 - Browse repository at this point
Copy the full SHA b421cd5View commit details -
Compute mutability of closure captures
When `capture_disjoint_fields` is not enabled, checking if the root variable binding is mutable would suffice. However with the feature enabled, the captured place might be mutable because it dereferences a mutable reference. This PR computes the mutability of each capture after capture analysis in rustc_typeck. We store this in `ty::CapturedPlace` and then use `ty::CapturedPlace::mutability` in mir_build and borrow_check.
Configuration menu - View commit details
-
Copy full SHA for 3488082 - Browse repository at this point
Copy the full SHA 3488082View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1373f98 - Browse repository at this point
Copy the full SHA 1373f98View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0897db5 - Browse repository at this point
Copy the full SHA 0897db5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 604cbdc - Browse repository at this point
Copy the full SHA 604cbdcView commit details -
Configuration menu - View commit details
-
Copy full SHA for c748f32 - Browse repository at this point
Copy the full SHA c748f32View commit details -
Configuration menu - View commit details
-
Copy full SHA for ffd5327 - Browse repository at this point
Copy the full SHA ffd5327View commit details -
Configuration menu - View commit details
-
Copy full SHA for fadf03e - Browse repository at this point
Copy the full SHA fadf03eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 0f4bab2 - Browse repository at this point
Copy the full SHA 0f4bab2View commit details
Commits on Jan 30, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 5a3b85c - Browse repository at this point
Copy the full SHA 5a3b85cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 9946b54 - Browse repository at this point
Copy the full SHA 9946b54View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6946534 - Browse repository at this point
Copy the full SHA 6946534View commit details
Commits on Jan 31, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 6695690 - Browse repository at this point
Copy the full SHA 6695690View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8940a26 - Browse repository at this point
Copy the full SHA 8940a26View commit details -
Rollup merge of #80092 - sexxi-goose:restrict_precision, r=nikomatsakis
2229: Fix issues with move closures and mutability This PR fixes two issues when feature `capture_disjoint_fields` is used. 1. Can't mutate using a mutable reference 2. Move closures try to move value out through a reference. To do so, we 1. Compute the mutability of the capture and store it as part of the `CapturedPlace` that is written in TypeckResults 2. Restrict capture precision. Note this is temporary for now, to allow the feature to be used with move closures and ByValue captures and might change depending on discussions with the lang team. - No Derefs are captured for ByValue captures, since that will result in value behind a reference getting moved. - No projections are applied to raw pointers since these require unsafe blocks. We capture them completely. r? ```@nikomatsakis```
Configuration menu - View commit details
-
Copy full SHA for cd9a250 - Browse repository at this point
Copy the full SHA cd9a250View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0155051 - Browse repository at this point
Copy the full SHA 0155051View commit details -
Rollup merge of #80629 - sexxi-goose:migrations_1, r=nikomatsakis
Add lint for 2229 migrations Implements the first for RFC 2229 where we make the decision to migrate a root variable based on if the type of the variable needs Drop and if the root variable would be moved into the closure when the feature isn't enabled. r? `@nikomatsakis`
Configuration menu - View commit details
-
Copy full SHA for 61ab140 - Browse repository at this point
Copy the full SHA 61ab140View commit details -
Rollup merge of #81255 - sunfishcode:wasi-no-export-dynamic, r=alexcr…
…ichton Don't link with --export-dynamic on wasm32-wasi Remove --export-dynamic from the link arguments on the wasm32-wasi target, as it emits spurious exports and increases code size. Leave it in place for wasm32-unknown-unknown and wasm32-unknown-emscripten. Even though it isn't a great solution there, users are likely depending on its behavior there.
Configuration menu - View commit details
-
Copy full SHA for 666d2ad - Browse repository at this point
Copy the full SHA 666d2adView commit details -
Rollup merge of #81351 - lcnr:big-money-big-prices, r=oli-obk
combine: stop eagerly evaluating consts `super_relate_consts` eagerly evaluates constants which doesn't seem too great. I now also finally understand why all of the unused substs test passed. The reason being that we just evaluated the constants in `super_relate_consts` 😆 While this change isn't strictly necessary as evaluating consts here doesn't hurt, it still feels a lot cleaner to do it this way r? ``@oli-obk`` ``@nikomatsakis``
Configuration menu - View commit details
-
Copy full SHA for 9fc2952 - Browse repository at this point
Copy the full SHA 9fc2952View commit details -
Rollup merge of #81480 - b-naber:nested_fields_suggestion, r=estebank
Add suggestion for nested fields Closes #81220 r? `@estebank`
Configuration menu - View commit details
-
Copy full SHA for 6443825 - Browse repository at this point
Copy the full SHA 6443825View commit details -
Rollup merge of #81589 - Seppel3210:master, r=jonas-schievink
Fix small typo in string.rs
Configuration menu - View commit details
-
Copy full SHA for 2b9fec7 - Browse repository at this point
Copy the full SHA 2b9fec7View commit details -
Rollup merge of #81590 - KodrAus:stabilize/int_bits_const, r=m-ou-se
Stabilize int_bits_const Closes #76904 The FCP to stabilize the `int_bits_const` feature completed on the tracking issue.
Configuration menu - View commit details
-
Copy full SHA for bd990cc - Browse repository at this point
Copy the full SHA bd990ccView commit details