Skip to content
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

Upgrade hashbrown to 0.12.3 #99372

Closed
wants to merge 1,641 commits into from
Closed
This pull request is big! We’re only showing the most recent 250 commits.

Commits on Jul 12, 2022

  1. interpret: refactor projection handling code

    Moves our projection handling code into a common file, and avoids the use of a
    general mplace-based fallback function by have more specialized implementations.
    
    mplace_index (and the other slice-related functions) could be more efficient by
    copy-pasting the body of operand_index. Or we could do some trait magic to share
    the code between them. But for now this is probably fine.
    RalfJung committed Jul 12, 2022
    Configuration menu
    Copy the full SHA
    ab225ad View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    04b3cd9 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    e03cb7f View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    3de6d6b View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    24e8796 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    7269196 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    f515af7 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    349a3fc View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    944c0e2 View commit details
    Browse the repository at this point in the history
  10. add more tests

    fee1-dead committed Jul 12, 2022
    Configuration menu
    Copy the full SHA
    e652147 View commit details
    Browse the repository at this point in the history
  11. ⬆️ rust-analyzer

    lnicola committed Jul 12, 2022
    Configuration menu
    Copy the full SHA
    697dfb5 View commit details
    Browse the repository at this point in the history
  12. fix the typo

    dingxiangfei2009 committed Jul 12, 2022
    Configuration menu
    Copy the full SHA
    947cbda View commit details
    Browse the repository at this point in the history
  13. add new rval, pull deref early

    ouz-a committed Jul 12, 2022
    Configuration menu
    Copy the full SHA
    cb0017f View commit details
    Browse the repository at this point in the history
  14. Rollup merge of rust-lang#98622 - petrochenkov:executables, r=oli-obk

    rustc_target: Flip the default for `TargetOptions::executables` to true
    
    This flag is true for most targets and the remaining targets may be mistakes.
    Dylan-DPC authored Jul 12, 2022
    Configuration menu
    Copy the full SHA
    7615366 View commit details
    Browse the repository at this point in the history
  15. Rollup merge of rust-lang#98633 - c410-f3r:yet-another-let-chain, r=e…

    …stebank
    
    Fix last `let_chains` blocker
    
    In order to forbid things like `let x = (let y = 1);` or `if let a = 1 && { let x = let y = 1; } {}`, the parser **HAS** to know the context of `let`.
    
    This context thing is not a surprise in the parser because you can see **a lot** of ad hoc fixes mixing parsing logic with validation logic creating code that looks more like spaghetti with tomato sauce.
    
    To make things even greater, a new ad hoc fix was added to only allow `let`s in a valid `let_chains` context by checking the previously processed token. This was the only solution I could think of and believe me, I thought about it for a long time 👍
    
    In the long term, it should be preferable to segregate different responsibilities or create a more robust and cleaner parser framework.
    
    cc rust-lang#94927
    cc rust-lang#53667
    Dylan-DPC authored Jul 12, 2022
    Configuration menu
    Copy the full SHA
    9997c51 View commit details
    Browse the repository at this point in the history
  16. Rollup merge of rust-lang#98972 - TaKO8Ki:suggest-adding-missing-zero…

    …-to-floating-point-number, r=compiler-errors
    
    Suggest adding a missing zero to a floating point number
    
    fixes rust-lang#98836
    Dylan-DPC authored Jul 12, 2022
    Configuration menu
    Copy the full SHA
    99fc65b View commit details
    Browse the repository at this point in the history
  17. Rollup merge of rust-lang#99038 - jackh726:earlybinder-cleanup, r=lcnr

    Some more `EarlyBinder` cleanups
    
    First commit has a couple unrelated cleanups, but otherwise each commit is self-explanatory
    
    r? rust-lang/types
    Dylan-DPC authored Jul 12, 2022
    Configuration menu
    Copy the full SHA
    c0bcbe8 View commit details
    Browse the repository at this point in the history
  18. Rollup merge of rust-lang#99154 - rosehuds:master, r=cjgillot

    use PlaceRef::iter_projections to fix old FIXME
    
    I added this function in 53481a5
    Dylan-DPC authored Jul 12, 2022
    Configuration menu
    Copy the full SHA
    01c2421 View commit details
    Browse the repository at this point in the history
  19. Rollup merge of rust-lang#99171 - GuillaumeGomez:rustdoc-ui-test-rege…

    …x, r=Dylan-DPC
    
    Put back UI test regex
    
    I just realized I overwrote these two commits in rust-lang#99055 when force pushing to fix the stdout output...
    
    r? `@Dylan-DPC`
    Dylan-DPC authored Jul 12, 2022
    Configuration menu
    Copy the full SHA
    87e25e4 View commit details
    Browse the repository at this point in the history
  20. Auto merge of rust-lang#99177 - Dylan-DPC:rollup-m0k9q2w, r=Dylan-DPC

    Rollup of 6 pull requests
    
    Successful merges:
    
     - rust-lang#98622 (rustc_target: Flip the default for `TargetOptions::executables` to true)
     - rust-lang#98633 (Fix last `let_chains` blocker)
     - rust-lang#98972 (Suggest adding a missing zero to a floating point number)
     - rust-lang#99038 (Some more `EarlyBinder` cleanups)
     - rust-lang#99154 (use PlaceRef::iter_projections to fix old FIXME)
     - rust-lang#99171 (Put back UI test regex)
    
    Failed merges:
    
    r? `@ghost`
    `@rustbot` modify labels: rollup
    bors committed Jul 12, 2022
    Configuration menu
    Copy the full SHA
    1c7b36d View commit details
    Browse the repository at this point in the history
  21. Parse closure binders

    This is first step in implementing RFC 3216.
    - Parse `for<'a>` before closures in ast
      - Error in lowering
    - Add `closure_lifetime_binder` feature
    WaffleLapkin committed Jul 12, 2022
    Configuration menu
    Copy the full SHA
    40ae7b5 View commit details
    Browse the repository at this point in the history
  22. --bless tests

    WaffleLapkin committed Jul 12, 2022
    Configuration menu
    Copy the full SHA
    97fcead View commit details
    Browse the repository at this point in the history
  23. Configuration menu
    Copy the full SHA
    f89ef3c View commit details
    Browse the repository at this point in the history
  24. ignore wasm=32 & bless

    ouz-a committed Jul 12, 2022
    Configuration menu
    Copy the full SHA
    b4c3a2a View commit details
    Browse the repository at this point in the history
  25. Configuration menu
    Copy the full SHA
    2f0172f View commit details
    Browse the repository at this point in the history
  26. Configuration menu
    Copy the full SHA
    a89d014 View commit details
    Browse the repository at this point in the history
  27. Update compiler/rustc_parse/src/parser/expr.rs

    Co-authored-by: Vadim Petrochenkov <vadim.petrochenkov@gmail.com>
    notriddle and petrochenkov committed Jul 12, 2022
    Configuration menu
    Copy the full SHA
    9fcb9c6 View commit details
    Browse the repository at this point in the history
  28. Configuration menu
    Copy the full SHA
    c2dbd62 View commit details
    Browse the repository at this point in the history
  29. Configuration menu
    Copy the full SHA
    0c28484 View commit details
    Browse the repository at this point in the history
  30. Configuration menu
    Copy the full SHA
    577f3c6 View commit details
    Browse the repository at this point in the history
  31. Configuration menu
    Copy the full SHA
    3ebb852 View commit details
    Browse the repository at this point in the history
  32. Add an indirection for closures in hir::ExprKind

    This helps bring `hir::Expr` size down, `Closure` was the biggest
    variant, especially after `for<>` additions.
    WaffleLapkin committed Jul 12, 2022
    Configuration menu
    Copy the full SHA
    df4fee9 View commit details
    Browse the repository at this point in the history
  33. Configuration menu
    Copy the full SHA
    d2923b4 View commit details
    Browse the repository at this point in the history
  34. Configuration menu
    Copy the full SHA
    b504a18 View commit details
    Browse the repository at this point in the history
  35. Configuration menu
    Copy the full SHA
    30a3673 View commit details
    Browse the repository at this point in the history
  36. Fix clippy build

    WaffleLapkin committed Jul 12, 2022
    Configuration menu
    Copy the full SHA
    9aa142b View commit details
    Browse the repository at this point in the history

Commits on Jul 13, 2022

  1. Use &{self.x} for packed Copy structs.

    Because it's more concise than the `let` form.
    nnethercote committed Jul 13, 2022
    Configuration menu
    Copy the full SHA
    1cb1d63 View commit details
    Browse the repository at this point in the history
  2. Auto merge of rust-lang#99101 - RalfJung:interpret-projections, r=oli…

    …-obk
    
    interpret: refactor projection handling code
    
    Moves our projection handling code into a common file, and avoids the use of a
    general mplace-based fallback function by have more specialized implementations.
    
    mplace_index (and the other slice-related functions) could be more efficient by
    copy-pasting the body of operand_index. Or we could do some trait magic to share
    the code between them. But for now this is probably fine.
    
    This is the common part of rust-lang#99013 and rust-lang#99097. I am seeing some strange perf results so this probably should be its own change so we know which diff caused which perf changes...
    
    r? `@oli-obk`
    bors committed Jul 13, 2022
    Configuration menu
    Copy the full SHA
    7b57152 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    5188bdb View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    f65bf0b View commit details
    Browse the repository at this point in the history
  5. fix documentation

    fee1-dead committed Jul 13, 2022
    Configuration menu
    Copy the full SHA
    1d26006 View commit details
    Browse the repository at this point in the history
  6. Auto merge of rust-lang#99149 - ferrocene:pa-nightly-branch, r=Mark-S…

    …imulacrum
    
    Configure nightly branch name in `stage0.json`
    
    The beta version number detection code relies on git to know how many merge commits were made since we branched off, and in doing so hardcodes `master` as the default branch name. This works for rust-lang/rust, but is problematic for forks that use a different default branch name (in Ferrocene we use `main` instead).
    
    This PR changes the code to instead load the default branch name from `src/stage0.json`. `bump-stage0` has also been updated to remove the need to update it every time a new field is added to `stage0.json`.
    bors committed Jul 13, 2022
    Configuration menu
    Copy the full SHA
    95e8b86 View commit details
    Browse the repository at this point in the history
  7. Auto merge of rust-lang#99066 - est31:remove_box_librustdoc, r=jsha

    Remove most box syntax from librustdoc
    
    This is the second attempt after the librustdoc specific changes have been reverted from rust-lang#87781 in rust-lang#89134, due to a minor, but exant regression caused by the changes. ~~There have been some changes to librustdoc in the past and maybe thanks to them there is no regression any more. If there is still a regression, one can investigate further and maybe find ways to fix the regressions. Thus, i request a perf run.~~ Edit: turns out there is still a regression, but it's caused only by a subset of the changes. So I've changed this PR to only contains the changes that don't cause any performance regressions, keeping the regression causing changes for a later PR.
    bors committed Jul 13, 2022
    Configuration menu
    Copy the full SHA
    a639f89 View commit details
    Browse the repository at this point in the history
  8. Rollup merge of rust-lang#98789 - aDotInTheVoid:rjdt-derives, r=jsha

    rustdoc-json-types: Clean up derives.
    
    Closes rust-lang#96189
    
    Everything is `Clone, Debug, PartialEq, Eq, Hash, Serialize, Deserialize` except `Crate` and `Item` which arn't `Hash`, as they have `HashMap`'s. See linked issue for reasoning.
    
    ``@rustbot`` modify labels: +T-rustdoc +A-rustdoc-json
    GuillaumeGomez authored Jul 13, 2022
    Configuration menu
    Copy the full SHA
    3dfb224 View commit details
    Browse the repository at this point in the history
  9. Rollup merge of rust-lang#98848 - flip1995:clippy-book, r=jyn514

    Build the Clippy book as part of x.py doc
    
    r? ``@ehuss`` since you said you would be interested in helping moving this forward.
    
    cc ``@jyn514`` as part of the bootstrap team.
    GuillaumeGomez authored Jul 13, 2022
    Configuration menu
    Copy the full SHA
    0b3644e View commit details
    Browse the repository at this point in the history
  10. Rollup merge of rust-lang#99020 - fee1-dead-contrib:repr_transparent_…

    …non_exhaustive, r=oli-obk
    
    check non_exhaustive attr and private fields for transparent types
    
    Fixes rust-lang#78586.
    GuillaumeGomez authored Jul 13, 2022
    Configuration menu
    Copy the full SHA
    8a48557 View commit details
    Browse the repository at this point in the history
  11. Rollup merge of rust-lang#99132 - jyn514:autolabel, r=Mark-Simulacrum

    Add some autolabels for A-bootstrap and T-infra
    GuillaumeGomez authored Jul 13, 2022
    Configuration menu
    Copy the full SHA
    876d599 View commit details
    Browse the repository at this point in the history
  12. Rollup merge of rust-lang#99148 - SOF3:clarify-xsize-bound, r=scottmcm

    Clarify that [iu]size bounds were only defined for the target arch
    GuillaumeGomez authored Jul 13, 2022
    Configuration menu
    Copy the full SHA
    41eb8dd View commit details
    Browse the repository at this point in the history
  13. Rollup merge of rust-lang#99152 - GuillaumeGomez:css-theme-var, r=jsha

    Use CSS variables to handle theming (part 2)
    
    Follow-up of rust-lang#98460.
    
    As usual, there shouldn't be any UI change.
    
    You can test it [here](https://rustdoc.crud.net/imperio/css-theme-var/bar/index.html).
    
    r? `@jsha`
    GuillaumeGomez authored Jul 13, 2022
    Configuration menu
    Copy the full SHA
    3b30cce View commit details
    Browse the repository at this point in the history
  14. Rollup merge of rust-lang#99168 - TaKO8Ki:add-regression-test-for-747…

    …13, r=Dylan-DPC
    
    Add regression test for rust-lang#74713
    
    closes rust-lang#74713
    GuillaumeGomez authored Jul 13, 2022
    Configuration menu
    Copy the full SHA
    75d03d6 View commit details
    Browse the repository at this point in the history
  15. Rollup merge of rust-lang#99176 - lnicola:rust-analyzer-2022-07-12, r…

    …=lnicola
    
    ⬆️ rust-analyzer
    
    r? ``@ghost``
    GuillaumeGomez authored Jul 13, 2022
    Configuration menu
    Copy the full SHA
    660fcaa View commit details
    Browse the repository at this point in the history
  16. Rollup merge of rust-lang#99183 - jonas-schievink:proc_macro-mention-…

    …r-a, r=jyn514
    
    Mention rust-analyzer maintainers when `proc_macro` bridge is changed
    
    rust-analyzer vendors a modified copy of the `proc_macro` crate in order to expand procedural macros built by Cargo. Since the ABI used by proc macros can change, we need to follow along with those changes. Getting notified when the proc macro bridge changes should make that easier, since that's what defines the ABI.
    
    cc ```@rust-lang/wg-rls-2```
    GuillaumeGomez authored Jul 13, 2022
    Configuration menu
    Copy the full SHA
    3eb8198 View commit details
    Browse the repository at this point in the history
  17. Rollup merge of rust-lang#99185 - krasimirgg:llvm-wrapper-inlineasm, …

    …r=nikic
    
    llvm-wrapper: adapt for LLVM API change
    
    This adapts RustWrapper's ` LLVMRustInlineAsmVerify` for LLVM commit llvm/llvm-project@00797b8.
    GuillaumeGomez authored Jul 13, 2022
    Configuration menu
    Copy the full SHA
    f290811 View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    519c07b View commit details
    Browse the repository at this point in the history
  19. Auto merge of rust-lang#99203 - GuillaumeGomez:rollup-b2re0dv, r=Guil…

    …laumeGomez
    
    Rollup of 10 pull requests
    
    Successful merges:
    
     - rust-lang#98789 (rustdoc-json-types: Clean up derives.)
     - rust-lang#98848 (Build the Clippy book as part of x.py doc)
     - rust-lang#99020 (check non_exhaustive attr and private fields for transparent types)
     - rust-lang#99132 (Add some autolabels for A-bootstrap and T-infra)
     - rust-lang#99148 (Clarify that [iu]size bounds were only defined for the target arch)
     - rust-lang#99152 (Use CSS variables to handle theming (part 2))
     - rust-lang#99168 (Add regression test for rust-lang#74713)
     - rust-lang#99176 (:arrow_up: rust-analyzer)
     - rust-lang#99183 (Mention rust-analyzer maintainers when `proc_macro` bridge is changed)
     - rust-lang#99185 (llvm-wrapper: adapt for LLVM API change)
    
    Failed merges:
    
    r? `@ghost`
    `@rustbot` modify labels: rollup
    bors committed Jul 13, 2022
    Configuration menu
    Copy the full SHA
    ca4e394 View commit details
    Browse the repository at this point in the history
  20. Configuration menu
    Copy the full SHA
    031b2c5 View commit details
    Browse the repository at this point in the history
  21. Clippy fallout.

    cjgillot committed Jul 13, 2022
    Configuration menu
    Copy the full SHA
    c7ac816 View commit details
    Browse the repository at this point in the history
  22. Bless ui-fulldeps tests.

    cjgillot committed Jul 13, 2022
    Configuration menu
    Copy the full SHA
    3b1b38d View commit details
    Browse the repository at this point in the history
  23. Add feature gate.

    cjgillot committed Jul 13, 2022
    Configuration menu
    Copy the full SHA
    5a20834 View commit details
    Browse the repository at this point in the history
  24. Rollup merge of rust-lang#98574 - dingxiangfei2009:let-else-thir, r=o…

    …li-obk
    
    Lower let-else in MIR
    
    This MR will switch to lower let-else statements in MIR building instead.
    
    To lower let-else in MIR, we build a mini-switch two branches. One branch leads to the matching case, and the other leads to the `else` block. This arrangement will allow temporary lifetime analysis running as-is so that the temporaries are properly extended according to the same rule applied to regular `let` statements.
    
    cc rust-lang#87335
    
    Fix rust-lang#98672
    Dylan-DPC authored Jul 13, 2022
    Configuration menu
    Copy the full SHA
    0083cd2 View commit details
    Browse the repository at this point in the history
  25. Rollup merge of rust-lang#99011 - oli-obk:UnsoundCell, r=eddyb

    `UnsafeCell` blocks niches inside its nested type from being available outside
    
    fixes rust-lang#87341
    
    This implements the plan by `@eddyb` in rust-lang#87341 (comment)
    
    Somewhat related PR (not strictly necessary, but that cleanup made this PR simpler): rust-lang#94527
    Dylan-DPC authored Jul 13, 2022
    Configuration menu
    Copy the full SHA
    1e7d04b View commit details
    Browse the repository at this point in the history
  26. Rollup merge of rust-lang#99030 - rust-lang:notriddle/field-recovery,…

    … r=petrochenkov
    
    diagnostics: error messages when struct literals fail to parse
    
    If an expression is supplied where a field is expected, the parser can become convinced that it's a shorthand field syntax when it's not.
    
    This PR addresses it by explicitly recording the permitted `:` token immediately after the identifier, and also adds a suggestion to insert the name of the field if it looks like a complex expression.
    
    Fixes rust-lang#98917
    Dylan-DPC authored Jul 13, 2022
    Configuration menu
    Copy the full SHA
    980579a View commit details
    Browse the repository at this point in the history
  27. Rollup merge of rust-lang#99155 - Amanieu:unstable-target-features, r…

    …=davidtwco
    
    Keep unstable target features for asm feature checking
    
    Inline assembly uses the target features to determine which registers
    are available on the current target. However it needs to be able to
    access unstable target features for this.
    
    Fixes rust-lang#99071
    Dylan-DPC authored Jul 13, 2022
    Configuration menu
    Copy the full SHA
    68cfdbb View commit details
    Browse the repository at this point in the history
  28. Rollup merge of rust-lang#99199 - TaKO8Ki:remove-unnecessary-span-to-…

    …snippet, r=cjgillot
    
    Refactor: remove an unnecessary `span_to_snippet`
    
    `span_suggestion_hidden` does not show the suggested code and the suggestion is used just for rustfix, so `span_to_snippet` is unnecessary here.
    Dylan-DPC authored Jul 13, 2022
    Configuration menu
    Copy the full SHA
    3933b2b View commit details
    Browse the repository at this point in the history
  29. get rid of MemPlaceMeta::Poison

    MPlaceTy::dangling still exists, but now it is only called in places that
    actually conceptually allocate something new, so that's fine.
    RalfJung committed Jul 13, 2022
    Configuration menu
    Copy the full SHA
    874a130 View commit details
    Browse the repository at this point in the history
  30. Auto merge of rust-lang#98145 - ouz-a:some_branch, r=oli-obk

    Pull Derefer before ElaborateDrops
    
    _Follow up work to rust-lang#97025 rust-lang#96549 rust-lang#96116 rust-lang#95887 #95649_
    
    This moves `Derefer` before `ElaborateDrops` and creates a new `Rvalue` called `VirtualRef` that allows us to bypass many constraints for `DerefTemp`.
    
    r? `@oli-obk`
    bors committed Jul 13, 2022
    Configuration menu
    Copy the full SHA
    42bd138 View commit details
    Browse the repository at this point in the history
  31. use gathered body_owners in par_body_owners

    Signed-off-by: Miguel Guarniz <mi9uel9@gmail.com>
    kckeiks committed Jul 13, 2022
    Configuration menu
    Copy the full SHA
    c6e7c05 View commit details
    Browse the repository at this point in the history
  32. inline associated_body

    Signed-off-by: Miguel Guarniz <mi9uel9@gmail.com>
    kckeiks committed Jul 13, 2022
    Configuration menu
    Copy the full SHA
    b599cf4 View commit details
    Browse the repository at this point in the history
  33. merge visitors in queries

    Signed-off-by: Miguel Guarniz <mi9uel9@gmail.com>
    kckeiks committed Jul 13, 2022
    Configuration menu
    Copy the full SHA
    275497c View commit details
    Browse the repository at this point in the history
  34. Auto merge of rust-lang#99210 - Dylan-DPC:rollup-879cp1t, r=Dylan-DPC

    Rollup of 5 pull requests
    
    Successful merges:
    
     - rust-lang#98574 (Lower let-else in MIR)
     - rust-lang#99011 (`UnsafeCell` blocks niches inside its nested type from being available outside)
     - rust-lang#99030 (diagnostics: error messages when struct literals fail to parse)
     - rust-lang#99155 (Keep unstable target features for asm feature checking)
     - rust-lang#99199 (Refactor: remove an unnecessary `span_to_snippet`)
    
    Failed merges:
    
    r? `@ghost`
    `@rustbot` modify labels: rollup
    bors committed Jul 13, 2022
    Configuration menu
    Copy the full SHA
    c80dde4 View commit details
    Browse the repository at this point in the history
  35. Configuration menu
    Copy the full SHA
    f94484f View commit details
    Browse the repository at this point in the history
  36. collect module item-likes in visit_items

    Signed-off-by: Miguel Guarniz <mi9uel9@gmail.com>
    kckeiks committed Jul 13, 2022
    Configuration menu
    Copy the full SHA
    2d265b6 View commit details
    Browse the repository at this point in the history
  37. Auto merge of rust-lang#99136 - CAD97:layout-faster, r=scottmcm

    Take advantage of known-valid-align in layout.rs
    
    An attempt to improve perf by `@nnethercote's` approach suggested in rust-lang#99117
    bors committed Jul 13, 2022
    Configuration menu
    Copy the full SHA
    87588a2 View commit details
    Browse the repository at this point in the history
  38. Emit warning when named arguments are used positionally in format

    Addresses Issue 98466 by emitting a warning if a named argument
    is used like a position argument (i.e. the name is not used in
    the string to be formatted).
    
    Fixes rust-lang#98466
    PrestonFrom committed Jul 13, 2022
    Configuration menu
    Copy the full SHA
    1219f72 View commit details
    Browse the repository at this point in the history
  39. Configuration menu
    Copy the full SHA
    848d23b View commit details
    Browse the repository at this point in the history
  40. Configuration menu
    Copy the full SHA
    ec7152c View commit details
    Browse the repository at this point in the history
  41. Configuration menu
    Copy the full SHA
    6dfede3 View commit details
    Browse the repository at this point in the history
  42. Configuration menu
    Copy the full SHA
    5bf6017 View commit details
    Browse the repository at this point in the history
  43. Configuration menu
    Copy the full SHA
    e4593ef View commit details
    Browse the repository at this point in the history
  44. Configuration menu
    Copy the full SHA
    07fe988 View commit details
    Browse the repository at this point in the history
  45. Rename debugging_opts to unstable_opts

    This is no longer used only for debugging options (e.g. `-Zoutput-width`, `-Zallow-features`).
    Rename it to be more clear.
    jyn514 committed Jul 13, 2022
    Configuration menu
    Copy the full SHA
    3c9765c View commit details
    Browse the repository at this point in the history
  46. Configuration menu
    Copy the full SHA
    82ab171 View commit details
    Browse the repository at this point in the history
  47. Add checks & fallback branch

    atsuzaki committed Jul 13, 2022
    Configuration menu
    Copy the full SHA
    b33955a View commit details
    Browse the repository at this point in the history
  48. Remove predicate note

    atsuzaki committed Jul 13, 2022
    Configuration menu
    Copy the full SHA
    083bd7c View commit details
    Browse the repository at this point in the history
  49. Auto merge of rust-lang#97995 - RalfJung:union-more-nodrop, r=Mark-Si…

    …mulacrum
    
    allow unions with mutable references and tuples of allowed types
    
    We currently allow shared references in unions, but not mutable references. That seems somewhat inconsistent. So let's allow all references, and while we are at it, let's make sure the set of allowed types is closed under tuples.
    
    This will need T-lang FCP (at least).
    
    Then remove the `tagged_unions` feature, since we do not plan to stabilize any more of it.
    Closes rust-lang#55149
    bors committed Jul 13, 2022
    Configuration menu
    Copy the full SHA
    cbb07c2 View commit details
    Browse the repository at this point in the history

Commits on Jul 14, 2022

  1. Configuration menu
    Copy the full SHA
    83c1788 View commit details
    Browse the repository at this point in the history
  2. bless tests

    aliemjay committed Jul 14, 2022
    Configuration menu
    Copy the full SHA
    570cf75 View commit details
    Browse the repository at this point in the history
  3. Update tests

    atsuzaki committed Jul 14, 2022
    Configuration menu
    Copy the full SHA
    96d34dc View commit details
    Browse the repository at this point in the history
  4. Rename std::io::Error::try_downcast_inner to downcast

    Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
    NobodyXu committed Jul 14, 2022
    Configuration menu
    Copy the full SHA
    111253c View commit details
    Browse the repository at this point in the history
  5. Auto merge of rust-lang#98754 - jyn514:non-trivial-drop, r=compiler-e…

    …rrors
    
    Fix drop-tracking ICE when a struct containing a field with a significant drop is used across an await
    
    Previously, drop-tracking would incorrectly assume the struct would be dropped immediately, which was not true.
    
    Fixes rust-lang#98476. Also fixes rust-lang#98477, I think because the parent HIR node for type variables is the whole function instead of the expression where the variable is used.
    
    r? `@eholk`
    bors committed Jul 14, 2022
    Configuration menu
    Copy the full SHA
    8a392a5 View commit details
    Browse the repository at this point in the history
  6. Stabilize core::ffi:c_* and rexport in std::ffi

    This only stabilizes the base types, not the non-zero variants, since
    those have their own separate tracking issue and have not gone through
    FCP to stabilize.
    joshtriplett committed Jul 14, 2022
    Configuration menu
    Copy the full SHA
    d431338 View commit details
    Browse the repository at this point in the history
  7. Update cargo

    ehuss committed Jul 14, 2022
    Configuration menu
    Copy the full SHA
    8d06175 View commit details
    Browse the repository at this point in the history
  8. Auto merge of rust-lang#99225 - ehuss:update-cargo, r=ehuss

    Update cargo
    
    7 commits in b1dd22e668af5279e13a071ad4b17435bd6bfa4c..8827baaa781b37872134c1ba692a6f0aeb37890e
    2022-07-09 14:48:50 +0000 to 2022-07-14 02:56:51 +0000
    - Add a test for regressions in selecting the correct workspace root (rust-lang/cargo#10862)
    - clarify profile used for 'cargo install --debug' (rust-lang/cargo#10861)
    - servers should use 404 (rust-lang/cargo#10860)
    - test(add): Ensure comments are preserved (rust-lang/cargo#10849)
    - Fix nested workspace resolution (rust-lang/cargo#10846)
    - Small tweaks to the future-incompat docs. (rust-lang/cargo#10856)
    - Fixed extra period typo (rust-lang/cargo#10847)
    bors committed Jul 14, 2022
    Configuration menu
    Copy the full SHA
    431c6f8 View commit details
    Browse the repository at this point in the history
  9. Auto merge of rust-lang#98975 - jyn514:unstable_opts, r=wesleywiser

    Rename `debugging_opts` to `unstable_opts`
    
    This is no longer used only for debugging options (e.g. `-Zoutput-width`, `-Zallow-features`).
    Rename it to be more clear.
    
    cc https://rust-lang.zulipchat.com/#narrow/stream/131828-t-compiler/topic/Codegen.20options.20.2F.20debugging.20options
    
    r? `@Amanieu` cc `@nikic` `@joshtriplett`
    bors committed Jul 14, 2022
    Configuration menu
    Copy the full SHA
    0ed9c64 View commit details
    Browse the repository at this point in the history
  10. Rollup merge of rust-lang#97720 - cjgillot:all-fresh, r=petrochenkov

    Always create elided lifetime parameters for functions
    
    Anonymous and elided lifetimes in functions are sometimes (async fns) --and sometimes not (regular fns)-- desugared to implicit generic parameters.
    
    This difference of treatment makes it some downstream analyses more complicated to handle.  This step is a pre-requisite to perform lifetime elision resolution on AST.
    
    There is currently an inconsistency in the treatment of argument-position impl-trait for functions and async fns:
    ```rust
    trait Foo<'a> {}
    fn foo(t: impl Foo<'_>) {} //~ ERROR missing lifetime specifier
    async fn async_foo(t: impl Foo<'_>) {} //~ OK
    fn bar(t: impl Iterator<Item = &'_ u8>) {} //~ ERROR missing lifetime specifier
    async fn async_bar(t: impl Iterator<Item = &'_ u8>) {} //~ OK
    ```
    
    The current implementation reports "missing lifetime specifier" on `foo`, but **accepts it** in `async_foo`.
    This PR **proposes to accept** the anonymous lifetime in both cases as an extra generic lifetime parameter.
    This change would be insta-stable, so let's ping t-lang.
    Anonymous lifetimes in GAT bindings keep being forbidden:
    ```rust
    fn foo(t: impl Foo<Assoc<'_> = Bar<'_>>) {}
                             ^^        ^^
                           forbidden   ok
    ```
    I started a discussion here: https://rust-lang.zulipchat.com/#narrow/stream/213817-t-lang/topic/Anonymous.20lifetimes.20in.20universal.20impl-trait/near/284968606
    
    r? ``@petrochenkov``
    Dylan-DPC authored Jul 14, 2022
    Configuration menu
    Copy the full SHA
    f5e9cb5 View commit details
    Browse the repository at this point in the history
  11. Rollup merge of rust-lang#98315 - joshtriplett:stabilize-core-ffi-c, …

    …r=Mark-Simulacrum
    
    Stabilize `core::ffi:c_*` and rexport in `std::ffi`
    
    This only stabilizes the base types, not the non-zero variants, since
    those have their own separate tracking issue and have not gone through
    FCP to stabilize.
    Dylan-DPC authored Jul 14, 2022
    Configuration menu
    Copy the full SHA
    103b860 View commit details
    Browse the repository at this point in the history
  12. Rollup merge of rust-lang#98705 - WaffleLapkin:closure_binder, r=cjgi…

    …llot
    
    Implement `for<>` lifetime binder for closures
    
    This PR implements RFC 3216 ([TI](rust-lang#97362)) and allows code like the following:
    
    ```rust
    let _f = for<'a, 'b> |a: &'a A, b: &'b B| -> &'b C { b.c(a) };
    //       ^^^^^^^^^^^--- new!
    ```
    
    cc ``@Aaron1011`` ``@cjgillot``
    Dylan-DPC authored Jul 14, 2022
    Configuration menu
    Copy the full SHA
    e5a86d7 View commit details
    Browse the repository at this point in the history
  13. Rollup merge of rust-lang#99126 - NiklasJonsson:84447/rustc_span, r=p…

    …etrochenkov
    
    remove allow(rustc::potential_query_instability) in rustc_span
    
    Also, avoid sorting before debug output as iteration order can now be
    relied upon.
    
    Related rust-lang#84447
    Dylan-DPC authored Jul 14, 2022
    Configuration menu
    Copy the full SHA
    85159a4 View commit details
    Browse the repository at this point in the history
  14. Rollup merge of rust-lang#99139 - jyn514:dist-tool-help, r=Mark-Simul…

    …acrum
    
    Give a better error when `x dist` fails for an optional tool
    
    Before:
    ```
    thread 'main' panicked at 'Unable to build RLS', dist.rs:42:9
    ```
    
    After:
    ```
    thread 'main' panicked at 'Unable to build submodule tool RLS (use `missing-tools = true` to ignore this failure)
    note: not all tools are available on all nightlies
    help: see https://forge.rust-lang.org/infra/toolstate.html for more information', dist.rs:43:9
    ```
    
    Closes rust-lang#85683 by explaining better why the error is expected.
    Dylan-DPC authored Jul 14, 2022
    Configuration menu
    Copy the full SHA
    c1b43ef View commit details
    Browse the repository at this point in the history
  15. Fix overlapping impls

    JulianKnodt committed Jul 14, 2022
    Configuration menu
    Copy the full SHA
    20fb8ab View commit details
    Browse the repository at this point in the history
  16. Fix spans for asm diagnostics

    Line spans were incorrect if the first line of an asm statement was an
    empty string.
    Amanieu committed Jul 14, 2022
    Configuration menu
    Copy the full SHA
    f4e7813 View commit details
    Browse the repository at this point in the history
  17. Auto merge of rust-lang#99231 - Dylan-DPC:rollup-0tl8c0o, r=Dylan-DPC

    Rollup of 5 pull requests
    
    Successful merges:
    
     - rust-lang#97720 (Always create elided lifetime parameters for functions)
     - rust-lang#98315 (Stabilize `core::ffi:c_*` and rexport in `std::ffi`)
     - rust-lang#98705 (Implement `for<>` lifetime binder for closures)
     - rust-lang#99126 (remove allow(rustc::potential_query_instability) in rustc_span)
     - rust-lang#99139 (Give a better error when `x dist` fails for an optional tool)
    
    Failed merges:
    
    r? `@ghost`
    `@rustbot` modify labels: rollup
    bors committed Jul 14, 2022
    Configuration menu
    Copy the full SHA
    f1a8854 View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    1e64a7b View commit details
    Browse the repository at this point in the history
  19. Configuration menu
    Copy the full SHA
    eb1a0c5 View commit details
    Browse the repository at this point in the history
  20. Remove unused CSS

    GuillaumeGomez committed Jul 14, 2022
    Configuration menu
    Copy the full SHA
    62d3b79 View commit details
    Browse the repository at this point in the history
  21. Configuration menu
    Copy the full SHA
    4580668 View commit details
    Browse the repository at this point in the history
  22. Auto merge of rust-lang#95956 - yaahc:stable-in-unstable, r=cjgillot

    Support unstable moves via stable in unstable items
    
    part of https://rust-lang.zulipchat.com/#narrow/stream/131828-t-compiler/topic/moving.20items.20to.20core.20unstably and a blocker of rust-lang#90328.
    
    The libs-api team needs the ability to move an already stable item to a new location unstably, in this case for Error in core. Otherwise these changes are insta-stable making them much harder to merge.
    
    This PR attempts to solve the problem by checking the stability of path segments as well as the last item in the path itself, which is currently the only thing checked.
    bors committed Jul 14, 2022
    Configuration menu
    Copy the full SHA
    24699bc View commit details
    Browse the repository at this point in the history
  23. Rollup merge of rust-lang#98072 - yaahc:generic-member-access, r=thomcc

    Add provider API to error trait
    
    Implements rust-lang/rfcs#2895
    Dylan-DPC authored Jul 14, 2022
    Configuration menu
    Copy the full SHA
    2b17aa6 View commit details
    Browse the repository at this point in the history
  24. Rollup merge of rust-lang#98580 - PrestonFrom:issue_98466, r=estebank

    Emit warning when named arguments are used positionally in format
    
    Addresses Issue 98466 by emitting an error if a named argument
    is used like a position argument (i.e. the name is not used in
    the string to be formatted).
    
    Fixes rust-lang#98466
    Dylan-DPC authored Jul 14, 2022
    Configuration menu
    Copy the full SHA
    8c5c983 View commit details
    Browse the repository at this point in the history
  25. Rollup merge of rust-lang#99000 - JulianKnodt:allow_resolve_no_substs…

    …, r=lcnr
    
    Move abstract const to middle
    
    Moves AbstractConst (and all associated methods) to rustc middle for use in `rustc_infer`.
    This allows for const resolution in infer to use abstract consts to walk consts and check if
    they are resolvable.
    
    This attempts to resolve the issue where `Foo<{ concrete const }, generic T>` is incorrectly marked as conflicting, and is independent from the other issue where nested abstract consts must be resolved.
    
    r? `@lcnr`
    Dylan-DPC authored Jul 14, 2022
    Configuration menu
    Copy the full SHA
    ecae3d7 View commit details
    Browse the repository at this point in the history
  26. Rollup merge of rust-lang#99192 - Amanieu:fix-asm-srcloc, r=petrochenkov

    Fix spans for asm diagnostics
    
    Line spans were incorrect if the first line of an asm statement was an
    empty string.
    Dylan-DPC authored Jul 14, 2022
    Configuration menu
    Copy the full SHA
    d3a1aa0 View commit details
    Browse the repository at this point in the history
  27. Rollup merge of rust-lang#99222 - atsuzaki:generic_const_err, r=lcnr

    Better error message for generic_const_exprs inference failure
    
    Fixes rust-lang#90531
    
    This code:
    ```rs
    #![feature(generic_const_exprs)]
    
    fn foo<const N: usize>(_arr: [u64; N + 1]) where [u64; N + 1]: {}
    
    fn main() {
      let arr = [5; 5];
      foo(arr);
    }
    ```
    
    Will now emit the following error:
    ```rs
    warning: the feature `generic_const_exprs` is incomplete and may not be safe to use and/or cause compiler crashes
     --> test.rs:1:12
      |
    1 | #![feature(generic_const_exprs)]
      |            ^^^^^^^^^^^^^^^^^^^
      |
      = note: `#[warn(incomplete_features)]` on by default
      = note: see issue rust-lang#76560 <rust-lang#76560> for more information
    
    error[E0284]: type annotations needed
     --> test.rs:8:7
      |
    8 |       foo(arr);
      |       ^^^ cannot infer the value of the const parameter `N` declared on the function `foo`
      |
    note: required by a bound in `foo`
     --> test.rs:3:56
      |
    3 | fn foo<const N: usize>(_arr: [u64; N + 1]) where [u64; N + 1]: {}
      |                                                        ^^^^^ required by this bound in `foo`
    help: consider specifying the generic argument
      |
    8 |       foo::<N>(arr);
      |          +++++
    
    error: aborting due to previous error; 1 warning emitted
    ```
    
    cc: `@lcnr` thanks a lot again for the help on this
    Dylan-DPC authored Jul 14, 2022
    Configuration menu
    Copy the full SHA
    39936fd View commit details
    Browse the repository at this point in the history
  28. Rollup merge of rust-lang#99236 - psumbera:Issue99208, r=Mark-Simulacrum

    solaris: unbreak build on native platform
    
    Fixes: rust-lang#99208
    Dylan-DPC authored Jul 14, 2022
    Configuration menu
    Copy the full SHA
    f74358d View commit details
    Browse the repository at this point in the history
  29. Remove comment referring to constness.rs

    This commit removes the comment in emulate_intrinsic, which is
    currently referring to 'src/librustc_middle/ty/constness.rs'.
    danbev committed Jul 14, 2022
    Configuration menu
    Copy the full SHA
    ed73037 View commit details
    Browse the repository at this point in the history
  30. Update RLS

    Xanewok committed Jul 14, 2022
    Configuration menu
    Copy the full SHA
    e24d13d View commit details
    Browse the repository at this point in the history
  31. Configuration menu
    Copy the full SHA
    e3ef4fd View commit details
    Browse the repository at this point in the history
  32. Auto merge of rust-lang#99242 - Dylan-DPC:rollup-34bqdh8, r=Dylan-DPC

    Rollup of 6 pull requests
    
    Successful merges:
    
     - rust-lang#98072 (Add provider API to error trait)
     - rust-lang#98580 (Emit warning when named arguments are used positionally in format)
     - rust-lang#99000 (Move abstract const to middle)
     - rust-lang#99192 (Fix spans for asm diagnostics)
     - rust-lang#99222 (Better error message for generic_const_exprs inference failure)
     - rust-lang#99236 (solaris: unbreak build on native platform)
    
    Failed merges:
    
    r? `@ghost`
    `@rustbot` modify labels: rollup
    bors committed Jul 14, 2022
    Configuration menu
    Copy the full SHA
    74621c7 View commit details
    Browse the repository at this point in the history
  33. Configuration menu
    Copy the full SHA
    b98fb49 View commit details
    Browse the repository at this point in the history
  34. fix dwarf debuginfo being used in addition to CodeView on windows

    Fixes the debuginfo size increase regression introduced by the DWARF5 support.
    lqd committed Jul 14, 2022
    Configuration menu
    Copy the full SHA
    97510f2 View commit details
    Browse the repository at this point in the history
  35. Auto merge of rust-lang#99252 - lqd:win-dwarf5, r=eddyb

    fix dwarf debuginfo being used in addition to CodeView on windows
    
    Tackles the debuginfo size increase regression on windows to [unblock clippy](rust-lang#99143 (comment)) -- introduced by the DWARF5 support in rust-lang#98350 cc `@pcwalton.`
    
    r? `@eddyb`
    Fixes rust-lang#99143
    bors committed Jul 14, 2022
    Configuration menu
    Copy the full SHA
    c2f428d View commit details
    Browse the repository at this point in the history
  36. Add Nintendo Switch tier 3 target

    jam1garner authored and leo60228 committed Jul 14, 2022
    Configuration menu
    Copy the full SHA
    e6aedf6 View commit details
    Browse the repository at this point in the history
  37. Configuration menu
    Copy the full SHA
    60beb1a View commit details
    Browse the repository at this point in the history
  38. Configuration menu
    Copy the full SHA
    f688a56 View commit details
    Browse the repository at this point in the history
  39. Add linker script for switch

    leo60228 committed Jul 14, 2022
    Configuration menu
    Copy the full SHA
    4bc8549 View commit details
    Browse the repository at this point in the history
  40. Don't build std for switch

    leo60228 committed Jul 14, 2022
    Configuration menu
    Copy the full SHA
    bee373c View commit details
    Browse the repository at this point in the history
  41. Configuration menu
    Copy the full SHA
    7f88049 View commit details
    Browse the repository at this point in the history
  42. Configuration menu
    Copy the full SHA
    c690db4 View commit details
    Browse the repository at this point in the history
  43. Add docs for Switch target

    leo60228 committed Jul 14, 2022
    Configuration menu
    Copy the full SHA
    fd81b99 View commit details
    Browse the repository at this point in the history
  44. Add aarch64-nintendo-switch.md to SUMMARY.md

    I can't think of any other reason CI might be failing, and I should've
    done this anyway.
    leo60228 committed Jul 14, 2022
    Configuration menu
    Copy the full SHA
    d04753e View commit details
    Browse the repository at this point in the history
  45. Configuration menu
    Copy the full SHA
    62aafb0 View commit details
    Browse the repository at this point in the history
  46. Configuration menu
    Copy the full SHA
    0d45977 View commit details
    Browse the repository at this point in the history
  47. Auto merge of rust-lang#96544 - m-ysk:feature/issue-96358, r=cjgillot

    Stop keeping metadata in memory before writing it to disk
    
    Fixes rust-lang#96358
    
    I created this PR according with the instruction given in the issue except for the following points:
    
    - While the issue says "Write metadata into the temporary file in `encode_and_write_metadata` even if `!need_metadata_file`", I could not do that. That is because though I tried to do that and run `x.py test`, I got a lot of test failures as follows.
    
    <details>
    <summary>List of failed tests</summary>
    <pre>
    <code>
    failures:
        [ui] src/test/ui/json-multiple.rs
        [ui] src/test/ui/json-options.rs
        [ui] src/test/ui/rmeta/rmeta-rpass.rs
        [ui] src/test/ui/save-analysis/emit-notifications.rs
        [ui] src/test/ui/svh/changing-crates.rs
        [ui] src/test/ui/svh/svh-change-lit.rs
        [ui] src/test/ui/svh/svh-change-significant-cfg.rs
        [ui] src/test/ui/svh/svh-change-trait-bound.rs
        [ui] src/test/ui/svh/svh-change-type-arg.rs
        [ui] src/test/ui/svh/svh-change-type-ret.rs
        [ui] src/test/ui/svh/svh-change-type-static.rs
        [ui] src/test/ui/svh/svh-use-trait.rs
    
    test result: FAILED. 12915 passed; 12 failed; 100 ignored; 0 measured; 0 filtered out; finished in 71.41s
    
    Some tests failed in compiletest suite=ui mode=ui host=x86_64-unknown-linux-gnu target=x86_64-unknown-linux-gnu
    Build completed unsuccessfully in 0:01:58
    </code>
    </pre>
    </details>
    
    - I could not resolve the extra tasks about `create_rmeta_file` and `create_compressed_metadata_file` for my lack of ability.
    bors committed Jul 14, 2022
    Configuration menu
    Copy the full SHA
    1ba1fec View commit details
    Browse the repository at this point in the history
  48. Configuration menu
    Copy the full SHA
    62edbbe View commit details
    Browse the repository at this point in the history
  49. Configuration menu
    Copy the full SHA
    6c6cccd View commit details
    Browse the repository at this point in the history
  50. Configuration menu
    Copy the full SHA
    ddb7003 View commit details
    Browse the repository at this point in the history
  51. Configuration menu
    Copy the full SHA
    d25abdc View commit details
    Browse the repository at this point in the history

Commits on Jul 15, 2022

  1. Auto merge of rust-lang#98203 - kckeiks:gather-body-owners-in-hir-ite…

    …m-queries, r=cjgillot
    
    gather body owners
    
    Issue rust-lang#96341
    bors committed Jul 15, 2022
    Configuration menu
    Copy the full SHA
    30243dd View commit details
    Browse the repository at this point in the history
  2. Improve example of downcast

    Co-authored-by: Jane Losare-Lusby <jlusby42@gmail.com>
    NobodyXu and yaahc authored Jul 15, 2022
    Configuration menu
    Copy the full SHA
    d8aba10 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    aad2334 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    57f7618 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    27b6ab9 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    78efaf4 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    03bfbe1 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    4b890f3 View commit details
    Browse the repository at this point in the history
  9. Auto merge of rust-lang#97406 - aliemjay:verify-bounds-fix-master, r=…

    …oli-obk
    
    Make outlives::{components,verify} agree
    
    fixes rust-lang#97405
    
    cc `@oli-obk` this is should fix rust-lang#95474 (comment)
    
    r? `@oli-obk`
    bors committed Jul 15, 2022
    Configuration menu
    Copy the full SHA
    b90a0ed View commit details
    Browse the repository at this point in the history
  10. Fix typo in mod.rs

    constuct -> construct
    eltociear authored Jul 15, 2022
    Configuration menu
    Copy the full SHA
    67a6c0a View commit details
    Browse the repository at this point in the history
  11. Rollup merge of rust-lang#99113 - WaffleLapkin:arc_simplify, r=Mark-S…

    …imulacrum
    
    Simplify [a]rc code a little
    
    Nothing interesting, just make [a]rc code a little nicer by using `byte_sub` and `let`-`else`.
    Dylan-DPC authored Jul 15, 2022
    Configuration menu
    Copy the full SHA
    99f3132 View commit details
    Browse the repository at this point in the history
  12. Rollup merge of rust-lang#99131 - compiler-errors:label-fn, r=cjgillot

    Add label for generic arg (+ APIT) and RPIT callables in `label_fn_like`
    
    Fixes rust-lang#98308
    Dylan-DPC authored Jul 15, 2022
    Configuration menu
    Copy the full SHA
    7b63058 View commit details
    Browse the repository at this point in the history
  13. Rollup merge of rust-lang#99237 - GuillaumeGomez:rustdoc-css-cleanup,…

    … r=notriddle
    
    removed unused CSS and unused HTML IDs
    
    I think that should cover most remaining unused CSS/HTML IDs.
    
    r? `@notriddle`
    Dylan-DPC authored Jul 15, 2022
    Configuration menu
    Copy the full SHA
    fe6062f View commit details
    Browse the repository at this point in the history
  14. Rollup merge of rust-lang#99239 - vakaras:add-myself-to-mir-followers…

    …, r=tmiasko
    
    Add myself to the set of people notified when MIR changes.
    
    I would like to be notified when changes to MIR are made.
    Dylan-DPC authored Jul 15, 2022
    Configuration menu
    Copy the full SHA
    bc8abdb View commit details
    Browse the repository at this point in the history
  15. Rollup merge of rust-lang#99241 - danbev:intrinsics-comment, r=fee1-dead

    Remove comment referring to constness.rs
    
    This commit removes the comment in emulate_intrinsic, which is
    currently referring to `src/librustc_middle/ty/constness.rs`.
    Dylan-DPC authored Jul 15, 2022
    Configuration menu
    Copy the full SHA
    6dae197 View commit details
    Browse the repository at this point in the history
  16. Rollup merge of rust-lang#99257 - Manishearth:regression, r=jackh726

    Add regression test for rust-lang#89436
    
    I never got around to adding such a test.
    
    In general I think the `yoke` crate has a bunch of interesting testcases that exercise various edges of the algorithms here, it would be nice if we could simply depend on the crate and add some tests that exercise it, but I don't think that's possible. Do you or `@eddyb` think there's any use trying to upstream a bunch of common yoke minimal working example code to the testsuite and having a ton of yoke tests?
    Dylan-DPC authored Jul 15, 2022
    Configuration menu
    Copy the full SHA
    7976cd6 View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    fcfb3e9 View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    45b88af View commit details
    Browse the repository at this point in the history
  19. Auto merge of rust-lang#99267 - Dylan-DPC:rollup-d8l7y1o, r=Dylan-DPC

    Rollup of 6 pull requests
    
    Successful merges:
    
     - rust-lang#99113 (Simplify [a]rc code a little)
     - rust-lang#99131 (Add label for generic arg (+ APIT) and RPIT callables in `label_fn_like`)
     - rust-lang#99237 (removed unused CSS and unused HTML IDs)
     - rust-lang#99239 (Add myself to the set of people notified when MIR changes.)
     - rust-lang#99241 (Remove comment referring to constness.rs)
     - rust-lang#99257 (Add regression test for rust-lang#89436)
    
    Failed merges:
    
    r? `@ghost`
    `@rustbot` modify labels: rollup
    bors committed Jul 15, 2022
    Configuration menu
    Copy the full SHA
    522abf6 View commit details
    Browse the repository at this point in the history
  20. Configuration menu
    Copy the full SHA
    fa3156e View commit details
    Browse the repository at this point in the history
  21. Auto merge of rust-lang#99013 - RalfJung:dont-poison-my-places, r=oli…

    …-obk
    
    interpret: get rid of MemPlaceMeta::Poison
    
    This is achieved by refactoring the projection code (`{mplace,place,operand}_{downcast,field,index,...}`) so that we no longer need to call `assert_mem_place` in the operand handling.
    bors committed Jul 15, 2022
    Configuration menu
    Copy the full SHA
    6077b7c View commit details
    Browse the repository at this point in the history
  22. Stabilize core::ffi::CStr, alloc::ffi::CString, and friends

    Stabilize the `core_c_str` and `alloc_c_string` feature gates.
    
    Change `std::ffi` to re-export these types rather than creating type
    aliases, since they now have matching stability.
    joshtriplett committed Jul 15, 2022
    Configuration menu
    Copy the full SHA
    d6b7480 View commit details
    Browse the repository at this point in the history
  23. Rollup merge of rust-lang#88991 - libstd-switch:aarch64-nintendo-swit…

    …ch, r=wesleywiser
    
    Add Nintendo Switch as tier 3 target
    
    [Relevant Zulip Discussion](https://rust-lang.zulipchat.com/#narrow/stream/219381-t-libs/topic/Upstreaming.20Nintendo.20Switch.20Support/near/253445503)
    
    This is the first step towards working on incrementally adding support for the Nintendo Switch. After this lands `@leo60228` and I will work on ensuring further work is cleared from a legal perspective before continuing on to work on an allocator and porting libstd.
    
    The plan is to keep these changes small and incremental enough so as to not cause unneeded burden on reviewers by submitting a single large patch, as was felt to be the case last attempt at upstreaming (rust-lang#74567).
    
    All this specific patch does is add the target itself without and std support, which has been tested on-device and is working as expected.
    
    Designated Target Maintainers:
    * `@leo60228`
    * `@jam1garner`
    Dylan-DPC authored Jul 15, 2022
    Configuration menu
    Copy the full SHA
    a6d3ee3 View commit details
    Browse the repository at this point in the history
  24. Rollup merge of rust-lang#98869 - compiler-errors:stop_guessing_head_…

    …span, r=cjgillot
    
    Remove some usages of `guess_head_span`
    
    No need to pass things through `guess_head_span` if they already point to the head span.
    
    Only major change is that we point to the head span of `enum`s on some errors now, which I prefer.
    
    r? `@cjgillot`
    Dylan-DPC authored Jul 15, 2022
    Configuration menu
    Copy the full SHA
    e0e6f1d View commit details
    Browse the repository at this point in the history
  25. Rollup merge of rust-lang#99119 - TaKO8Ki:remove-string-matching-abou…

    …t-methods, r=cjgillot
    
    Refactor: remove a string matching about methods
    
    This patch remove a string matching about methods and adds some rustfix tests.
    Dylan-DPC authored Jul 15, 2022
    Configuration menu
    Copy the full SHA
    24f0e14 View commit details
    Browse the repository at this point in the history
  26. Rollup merge of rust-lang#99209 - GuillaumeGomez:crate-level-sidebar,…

    … r=jsha
    
    Correctly handle crate level page on docs.rs as well
    
    Fixes rust-lang#99121.
    
    On docs.rs, they move the `class` attribute into a child which still has `rustdoc`. So instead of using the `<body>`, we can simply use this one directly.
    
    r? `@jsha`
    Dylan-DPC authored Jul 15, 2022
    Configuration menu
    Copy the full SHA
    5c8c4db View commit details
    Browse the repository at this point in the history
  27. Rollup merge of rust-lang#99246 - Xanewok:update-rls, r=jyn514

    Update RLS
    
    Fixes rust-lang#99234
    
    r? `@jyn514`
    cc `@Mark-Simulacrum`
    Dylan-DPC authored Jul 15, 2022
    Configuration menu
    Copy the full SHA
    8e3dd62 View commit details
    Browse the repository at this point in the history
  28. Auto merge of rust-lang#99278 - Dylan-DPC:rollup-fcln6st, r=Dylan-DPC

    Rollup of 5 pull requests
    
    Successful merges:
    
     - rust-lang#88991 (Add Nintendo Switch as tier 3 target)
     - rust-lang#98869 (Remove some usages of `guess_head_span`)
     - rust-lang#99119 (Refactor: remove a string matching about methods)
     - rust-lang#99209 (Correctly handle crate level page on docs.rs as well)
     - rust-lang#99246 (Update RLS)
    
    Failed merges:
    
    r? `@ghost`
    `@rustbot` modify labels: rollup
    bors committed Jul 15, 2022
    Configuration menu
    Copy the full SHA
    116819f View commit details
    Browse the repository at this point in the history
  29. Auto merge of rust-lang#99046 - nnethercote:final-derive-output-impro…

    …vements, r=Mark-Simulacrum
    
    Final derive output improvements
    
    With all these changes, the derive output in `deriving-all-codegen.stdout` is pretty close to optimal, i.e. very similar to what you'd write by hand.
    
    r? `@ghost`
    bors committed Jul 15, 2022
    Configuration menu
    Copy the full SHA
    0fe5390 View commit details
    Browse the repository at this point in the history
  30. QueryNormalizer bug on ambiguity

    lcnr committed Jul 15, 2022
    Configuration menu
    Copy the full SHA
    7808f69 View commit details
    Browse the repository at this point in the history
  31. Configuration menu
    Copy the full SHA
    2b730a3 View commit details
    Browse the repository at this point in the history
  32. remove unnecessary select_obligations_where_possible

    this was previously used for opaque types but became unnecessary
    after rust-lang#89024
    lcnr committed Jul 15, 2022
    Configuration menu
    Copy the full SHA
    29d0390 View commit details
    Browse the repository at this point in the history
  33. try to avoid FnCtxt during wf

    lcnr committed Jul 15, 2022
    Configuration menu
    Copy the full SHA
    4b56fd9 View commit details
    Browse the repository at this point in the history
  34. Configuration menu
    Copy the full SHA
    b955fa7 View commit details
    Browse the repository at this point in the history
  35. Configuration menu
    Copy the full SHA
    5bd8c96 View commit details
    Browse the repository at this point in the history
  36. Configuration menu
    Copy the full SHA
    16b2acc View commit details
    Browse the repository at this point in the history
  37. errors: impl IntoDiagnosticArg for char

    Implements `IntoDiagnosticArg` for `char` using its `Debug`
    implementation and introduces a macro for those types which just
    delegate the implementation to `ToString`.
    
    Signed-off-by: David Wood <david.wood@huawei.com>
    davidtwco committed Jul 15, 2022
    Configuration menu
    Copy the full SHA
    06f4806 View commit details
    Browse the repository at this point in the history
  38. errors: lint on LintDiagnosticBuilder::build

    Apply the `#[rustc_lint_diagnostics]` attribute to
    `LintDiagnosticBuilder::build` so that diagnostic migration lints will
    trigger for it.
    
    Signed-off-by: David Wood <david.wood@huawei.com>
    davidtwco committed Jul 15, 2022
    Configuration menu
    Copy the full SHA
    c3fdf74 View commit details
    Browse the repository at this point in the history
  39. macros: support MultiSpan in diag derives

    Add support for `MultiSpan` with any of the attributes that work on a
    `Span` - requires that diagnostic logic generated for these attributes
    are emitted in the by-move block rather than the by-ref block that they
    would normally have been generated in.
    
    Signed-off-by: David Wood <david.wood@huawei.com>
    davidtwco committed Jul 15, 2022
    Configuration menu
    Copy the full SHA
    88c11c5 View commit details
    Browse the repository at this point in the history
  40. macros: support adding warnings to diags

    Both diagnostic and subdiagnostic derives were missing the ability to
    add warnings to diagnostics - this is made more difficult by the `warn`
    attribute already existing, so this name being unavailable for the
    derives to use. `#[warn_]` is used instead, which requires
    special-casing so that `{span_,}warn` is called instead of
    `{span_,}warn_`.
    
    Signed-off-by: David Wood <david.wood@huawei.com>
    davidtwco committed Jul 15, 2022
    Configuration menu
    Copy the full SHA
    81cf229 View commit details
    Browse the repository at this point in the history
  41. passes: migrate half of check_attr

    Migrate half of the `rustc_passes::check_attr` diagnostics to using
    diagnostic derives and being translatable.
    davidtwco committed Jul 15, 2022
    Configuration menu
    Copy the full SHA
    78b19a9 View commit details
    Browse the repository at this point in the history
  42. Configuration menu
    Copy the full SHA
    84a444a View commit details
    Browse the repository at this point in the history
  43. Configuration menu
    Copy the full SHA
    c4cb043 View commit details
    Browse the repository at this point in the history
  44. Configuration menu
    Copy the full SHA
    a034446 View commit details
    Browse the repository at this point in the history
  45. Configuration menu
    Copy the full SHA
    eeb1033 View commit details
    Browse the repository at this point in the history
  46. Configuration menu
    Copy the full SHA
    7a8a048 View commit details
    Browse the repository at this point in the history
  47. Configuration menu
    Copy the full SHA
    0c6918f View commit details
    Browse the repository at this point in the history
  48. Some tracing helpers

    oli-obk committed Jul 15, 2022
    Configuration menu
    Copy the full SHA
    12457f8 View commit details
    Browse the repository at this point in the history
  49. Configuration menu
    Copy the full SHA
    728c7e8 View commit details
    Browse the repository at this point in the history
  50. Configuration menu
    Copy the full SHA
    6b33d5b View commit details
    Browse the repository at this point in the history
  51. Configuration menu
    Copy the full SHA
    ea68ce7 View commit details
    Browse the repository at this point in the history
  52. Configuration menu
    Copy the full SHA
    92e470a View commit details
    Browse the repository at this point in the history
  53. Configuration menu
    Copy the full SHA
    57e9f7a View commit details
    Browse the repository at this point in the history
  54. Mark stabilized intrinsics with rustc_allowed_through_unstable_modules

    Fixes rust-lang#99286
    
    PR rust-lang#95956 accidentally made these intrinsics unstable when
    accessed through the unstable path segment 'std::intrinsics'
    Aaron1011 committed Jul 15, 2022
    Configuration menu
    Copy the full SHA
    ef8e322 View commit details
    Browse the repository at this point in the history
  55. Auto merge of rust-lang#99015 - lcnr:fn-ctxt-no-more, r=compiler-errors

    stop using `FnCtxt` outside of hir typeck
    
    the requirements between **hir typeck**™, and **not hir typeck**™ are different enough to warrant a full split. with this PR `FnCtxt` is now only used for hir typeck (and for one clippy lint which seems to be emulating hir typeck).
    
    Once this PR has landed I intend to move `FnCtxt` into a new crate. This should also allow some further general improvements here.
    
    r? rust-lang/types
    bors committed Jul 15, 2022
    Configuration menu
    Copy the full SHA
    23e21bd View commit details
    Browse the repository at this point in the history
  56. Revert "Highlight conflicting param-env candidates"

    This reverts commit 0813525.
    compiler-errors committed Jul 15, 2022
    Configuration menu
    Copy the full SHA
    1c8f87e View commit details
    Browse the repository at this point in the history
  57. Configuration menu
    Copy the full SHA
    b71a09f View commit details
    Browse the repository at this point in the history
  58. Configuration menu
    Copy the full SHA
    2902b92 View commit details
    Browse the repository at this point in the history
  59. Configuration menu
    Copy the full SHA
    20b5aaf View commit details
    Browse the repository at this point in the history
  60. Avoid incorrect suggestion

    We check that there's a single level of block nesting to ensure always
    correct suggestions. If we don't, then we only provide a free-form
    message to avoid misleading users in cases like
    `src/test/ui/nll/borrowed-temporary-error.rs`.
    
    We could expand the analysis to suggest hoising all of the relevant
    parts of the users' code to make the code compile, but that could be
    too much.
    estebank committed Jul 15, 2022
    Configuration menu
    Copy the full SHA
    635c381 View commit details
    Browse the repository at this point in the history
  61. Move tests to fit in limit

    estebank committed Jul 15, 2022
    Configuration menu
    Copy the full SHA
    3e5809d View commit details
    Browse the repository at this point in the history
  62. Fix rebase

    estebank committed Jul 15, 2022
    Configuration menu
    Copy the full SHA
    3ee4e5f View commit details
    Browse the repository at this point in the history
  63. Configuration menu
    Copy the full SHA
    8e8a3be View commit details
    Browse the repository at this point in the history
  64. Configuration menu
    Copy the full SHA
    2085d6a View commit details
    Browse the repository at this point in the history
  65. Auto merge of rust-lang#99288 - Aaron1011:stable-intrinsics, r=yaahc

    Mark stabilized intrinsics with `rustc_allowed_through_unstable_modules`
    
    Fixes rust-lang#99286
    
    PR rust-lang#95956 accidentally made these intrinsics unstable when
    accessed through the unstable path segment 'std::intrinsics'
    bors committed Jul 15, 2022
    Configuration menu
    Copy the full SHA
    8c1cc82 View commit details
    Browse the repository at this point in the history
  66. Configuration menu
    Copy the full SHA
    a9d2ed2 View commit details
    Browse the repository at this point in the history

Commits on Jul 16, 2022

  1. Auto merge of rust-lang#95685 - oxidecomputer:restore-static-dwarf, r…

    …=pnkfelix
    
    Revert "Work around invalid DWARF bugs for fat LTO"
    
    Since September, the toolchain has not been generating reliable DWARF
    information for static variables when LTO is on. This has affected
    projects in the embedded space where the use of LTO is typical. In our
    case, it has kept us from bumping past the 2021-09-22 nightly toolchain
    lest our debugger break. This has been a pretty dramatic regression for
    people using debuggers and static variables. See rust-lang#90357 for more info
    and a repro case.
    
    This commit is a mechanical revert of
    d5de680 from PR rust-lang#89041, which caused
    the issue. (Note on that PR that the commit's author has requested it be
    reverted.)
    
    I have locally verified that this fixes rust-lang#90357 by restoring the
    functionality of both the repro case I posted on that bug, and debugger
    behavior on real programs. There do not appear to be test cases for this
    in the toolchain; if I've missed them, point me at 'em and I'll update
    them.
    bors committed Jul 16, 2022
    Configuration menu
    Copy the full SHA
    e6c43cf View commit details
    Browse the repository at this point in the history
  2. Stabilize future_poll_fn

    Signed-off-by: Yuki Okushi <jtitor@2k36.org>
    JohnTitor committed Jul 16, 2022
    Configuration menu
    Copy the full SHA
    084ad59 View commit details
    Browse the repository at this point in the history
  3. Propagate Expectation around binop typeck code to construct more prec…

    …ise trait obligations for binops.
    willcrichton committed Jul 16, 2022
    Configuration menu
    Copy the full SHA
    e5bb7d8 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    2f15dfa View commit details
    Browse the repository at this point in the history
  5. Add regression test for rust-lang#64401

    Signed-off-by: Yuki Okushi <jtitor@2k36.org>
    JohnTitor committed Jul 16, 2022
    Configuration menu
    Copy the full SHA
    6465980 View commit details
    Browse the repository at this point in the history
  6. Rollup merge of rust-lang#98387 - NobodyXu:feature/std_io_Error_try_d…

    …owngrade_inner, r=yaahc
    
    Add new unstable API `downcast` to `std::io::Error`
    
    rust-lang/libs-team#57
    
    Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
    JohnTitor authored Jul 16, 2022
    Configuration menu
    Copy the full SHA
    bf9ed99 View commit details
    Browse the repository at this point in the history
  7. Rollup merge of rust-lang#98662 - LucasDumont:document_fs_write, r=th…

    …omcc
    
    Add std::fs::write documentation precision
    
    Fixes rust-lang#97947.
    
    As mentioned in rust-lang#97947, the documentation is updated
    JohnTitor authored Jul 16, 2022
    Configuration menu
    Copy the full SHA
    06eb90e View commit details
    Browse the repository at this point in the history
  8. Rollup merge of rust-lang#99253 - pierwill:pierwill/rm-storage-fixme,…

    … r=oli-obk
    
    Remove FIXME from MIR `always_storage_live_locals`
    
    See discussion in rust-lang#99025 (comment).
    JohnTitor authored Jul 16, 2022
    Configuration menu
    Copy the full SHA
    b538d5a View commit details
    Browse the repository at this point in the history
  9. Rollup merge of rust-lang#99264 - eltociear:patch-14, r=compiler-errors

    Fix typo in mod.rs
    
    constuct -> construct
    JohnTitor authored Jul 16, 2022
    Configuration menu
    Copy the full SHA
    8a64529 View commit details
    Browse the repository at this point in the history
  10. Rollup merge of rust-lang#99270 - rhysd:issue-99269, r=Mark-Simulacrum

    Add `#[must_use]` to `Box::from_raw`
    
    Fixes rust-lang#99269
    JohnTitor authored Jul 16, 2022
    Configuration menu
    Copy the full SHA
    96474a7 View commit details
    Browse the repository at this point in the history
  11. Rollup merge of rust-lang#99277 - joshtriplett:stabilize-core-cstr-al…

    …loc-cstring, r=Mark-Simulacrum
    
    Stabilize `core::ffi::CStr`, `alloc::ffi::CString`, and friends
    
    Stabilize the `core_c_str` and `alloc_c_string` feature gates.
    
    Change `std::ffi` to re-export these types rather than creating type
    aliases, since they now have matching stability.
    JohnTitor authored Jul 16, 2022
    Configuration menu
    Copy the full SHA
    083a253 View commit details
    Browse the repository at this point in the history
  12. Rollup merge of rust-lang#99307 - JohnTitor:issue-64401, r=compiler-e…

    …rrors
    
    Add regression test for rust-lang#64401
    
    Closes rust-lang#64401
    r? `@compiler-errors`
    
    Signed-off-by: Yuki Okushi <jtitor@2k36.org>
    JohnTitor authored Jul 16, 2022
    Configuration menu
    Copy the full SHA
    202c11b View commit details
    Browse the repository at this point in the history
  13. Borrow Vec<T, A> as [T]

    yanchith committed Jul 16, 2022
    Configuration menu
    Copy the full SHA
    aeb9497 View commit details
    Browse the repository at this point in the history
  14. docs: add missing word

    tshepang committed Jul 16, 2022
    Configuration menu
    Copy the full SHA
    653a214 View commit details
    Browse the repository at this point in the history
  15. Auto merge of rust-lang#96482 - willcrichton:fix-trait-suggestion-for…

    …-binops, r=estebank
    
    Add Output = expected type trait obligation for known binary operators
    
    This PR is a follow-on to rust-lang#94034 that addresses rust-lang#96442. That is, after replacing the trait-suggestion logic in `op.rs` with a more generic path that analyzes a general set of `Obligation`s, then we lost some specificity in the suggestions where the bounds on the associated type `Output=` would not get suggested.
    
    This PR fixes this issue by changing `FnCtxt::construct_obligation_for_trait` to include a new `ProjectionPredicate` obligation for binary operators that obliges that `Output` is the same as the expected type of the expression. Additionally, to get the expected type of the expression, this PR threads the `Expectation<'tcx>` structure throughout several functions.
    
    See src/test/ui/generic-associated-types/missing-bounds.stderr for an example of how this works.
    
    One side effect of this change is it causes type-check failures with binops to include additional information. Specifically, many now say
    
    ```
    error: type mismatch resolving `<Lhs as TheBinop>::Output == ExpectedTy`
    ```
    
    It's up for discussion whether this added context is worth it to the user.
    
    r? `@estebank`
    bors committed Jul 16, 2022
    Configuration menu
    Copy the full SHA
    d695a49 View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    1a15c71 View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    3c55a26 View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    b95b138 View commit details
    Browse the repository at this point in the history
  19. Configuration menu
    Copy the full SHA
    b393e97 View commit details
    Browse the repository at this point in the history
  20. Auto merge of rust-lang#99263 - compiler-errors:issue-99261, r=jyn514

    Fix ICE in `named_arguments_used_positionally` lint
    
    Fixes rust-lang#99261
    Fixes rust-lang#99289
    Fixes rust-lang#99284
    Fixes rust-lang#99273
    Fixes rust-lang#99297
    Fixes rust-lang#99271
    
    This match pattern:
    
    ```
     FormatSpec { width: Count::CountIsName(s, _), .. }
    | FormatSpec { precision: Count::CountIsName(s, _), .. }
    ```
    
    does not account for when both `width` and `precision` are both `Count::CountIsName`, so split the check for these two fields into two separate `if let`.
    
    Also, remove any future potential for ICEs by removing the index operator altogether.
    
    ---
    
    It is still suspicious that this indexing was broken and caused the ICE, as opposed to just causing a spurious lint message.
    
    cc `@PrestonFrom,` who may be familiar with this code because of implementing the lint this touches, perhaps you'd like to look into why named arguments in `FormatSpec.precision` seem to have indices that don't correspond to a span in `Context.arg_spans`?
    
    Edit: Opened rust-lang#99265 to track a (related?) incorrect argument indexing issue.
    bors committed Jul 16, 2022
    Configuration menu
    Copy the full SHA
    5635158 View commit details
    Browse the repository at this point in the history
  21. Auto merge of rust-lang#99315 - JohnTitor:rollup-77wzoc1, r=JohnTitor

    Rollup of 7 pull requests
    
    Successful merges:
    
     - rust-lang#98387 (Add new unstable API `downcast` to `std::io::Error`)
     - rust-lang#98662 (Add std::fs::write documentation precision)
     - rust-lang#99253 (Remove FIXME from MIR `always_storage_live_locals`)
     - rust-lang#99264 (Fix typo in mod.rs)
     - rust-lang#99270 (Add `#[must_use]` to `Box::from_raw`)
     - rust-lang#99277 (Stabilize `core::ffi::CStr`, `alloc::ffi::CString`, and friends)
     - rust-lang#99307 (Add regression test for rust-lang#64401)
    
    Failed merges:
    
    r? `@ghost`
    `@rustbot` modify labels: rollup
    bors committed Jul 16, 2022
    Configuration menu
    Copy the full SHA
    7210e46 View commit details
    Browse the repository at this point in the history
  22. Configuration menu
    Copy the full SHA
    c54d4ad View commit details
    Browse the repository at this point in the history
  23. Rollup merge of rust-lang#98582 - oli-obk:unconstrained_opaque_type, …

    …r=estebank
    
    Allow destructuring opaque types in their defining scopes
    
    fixes rust-lang#96572
    
    Before this PR, the following code snippet failed with an incomprehensible error, and similar code just ICEd in mir borrowck.
    
    ```rust
        type T = impl Copy;
        let foo: T = (1u32, 2u32);
        let (a, b) = foo;
    ```
    
    The problem was that the last line created MIR projections of the form `foo.0` and `foo.1`, but `foo`'s type is `T`, which doesn't have fields (only its hidden type does). But the pattern supplies enough type information (a tuple of two different inference types) to bind a hidden type.
    matthiaskrgr authored Jul 16, 2022
    Configuration menu
    Copy the full SHA
    6f8fb91 View commit details
    Browse the repository at this point in the history
  24. Rollup merge of rust-lang#99213 - davidtwco:translation-migrate-passe…

    …s, r=compiler-errors
    
    migrate some of `rustc_passes::check_attr`'s diagnostics and derive improvements
    
    - Implements `IntoDiagnosticArg` for `char` using its `Debug` implementation and introduces a macro for those types which just delegate the implementation to `ToString`.
    - Apply the `#[rustc_lint_diagnostics]` attribute to `LintDiagnosticBuilder::build` so that diagnostic migration lints will trigger for it - some diagnostics in `rustc_privacy` need updated after this since the lints apply to that crate.
    - Add support for `MultiSpan` with any of the attributes that work on a `Span` in the diagnostic derive (`SessionDiagnostic` + `LintDiagnostic`). Requires that diagnostic logic generated for these attributes are emitted in the by-move block rather than the by-ref block that they would normally have been generated in.
    - Both diagnostic and subdiagnostic derives were missing the ability to add warnings to diagnostics - this is made more difficult by the `warn` attribute already existing, so this name being unavailable for the derives to use. `#[warn_]` is used instead, which requires special-casing so that `{span_,}warn` is called instead of `{span_,}warn_`.
    - Migrate half of the `rustc_passes::check_attr` diagnostics to using diagnostic derives and being translatable. I got tired after a while. I modified some diagnostic output for consistency while doing this, nothing too crazy.
    
    r? `@compiler-errors`
    matthiaskrgr authored Jul 16, 2022
    Configuration menu
    Copy the full SHA
    79857a7 View commit details
    Browse the repository at this point in the history
  25. Rollup merge of rust-lang#99258 - estebank:suggest-let, r=wesleywiser

    Provide structured suggestion for dropped temp value
    matthiaskrgr authored Jul 16, 2022
    Configuration menu
    Copy the full SHA
    984ef42 View commit details
    Browse the repository at this point in the history
  26. Rollup merge of rust-lang#99259 - RalfJung:visit-a-place, r=oli-obk

    interpret/visitor: support visiting with a PlaceTy
    
    Finally we can visit a `PlaceTy` in a way that will only do `force_allocation` when needed ti visit a field. :)
    
    r? `@oli-obk`
    matthiaskrgr authored Jul 16, 2022
    Configuration menu
    Copy the full SHA
    fa298be View commit details
    Browse the repository at this point in the history
  27. Rollup merge of rust-lang#99287 - GuillaumeGomez:rustdoc-json-double-…

    …export, r=notriddle
    
    [rustdoc-json] JSON no longer inlines
    
    Fixes rust-lang#98007.
    Fixes rust-lang#96161.
    Fixes rust-lang#83057.
    Fixes rust-lang#83720.
    
    I took over rust-lang#93518 and applied the comments and added more tests.
    
    There was one thing missing (which is in the second commit): if a non-exported item was used in a public API but not reexported, it was still missing.
    
    cc `@CraftSpider` `@Urgau` `@Enselic`
    
    r? `@notriddle`
    matthiaskrgr authored Jul 16, 2022
    Configuration menu
    Copy the full SHA
    02b9701 View commit details
    Browse the repository at this point in the history
  28. Rollup merge of rust-lang#99290 - compiler-errors:revert-98794, r=lcnr

    Revert "Highlight conflicting param-env candidates"
    
    This reverts rust-lang#98794, commit 0813525.
    
    Seems to have caused an incremental compilation bug. The root cause of the incr comp bug is somewhat unrelated but is triggered by this PR, so I don't feel comfortable with having this PR in the codebase until it can be investigated further. Fixes rust-lang#99233.
    matthiaskrgr authored Jul 16, 2022
    Configuration menu
    Copy the full SHA
    69e4f21 View commit details
    Browse the repository at this point in the history
  29. Configuration menu
    Copy the full SHA
    4805c21 View commit details
    Browse the repository at this point in the history
  30. Rollup merge of rust-lang#99317 - yanchith:borrow-vec-ta-as-slice-t, …

    …r=Mark-Simulacrum
    
    Borrow Vec<T, A> as [T]
    
    Hello all,
    
    When `Vec` was parametrized with `A`, the `Borrow` impls were omitted and currently `Vec<T, A>` can't be borrowed as `[T]`. This PR fixes that.
    
    This was probably missed, because the `Borrow` impls are in a different file - `src/alloc/slice.rs`.
    
    We briefly discussed this here: rust-lang/wg-allocators#96 and I was told to go ahead and make a PR :)
    
    I tested this by building the toolchain and building my code that needed the `Borrow` impl against it, but let me know if I should add any tests to this PR.
    matthiaskrgr authored Jul 16, 2022
    Configuration menu
    Copy the full SHA
    ddc32d1 View commit details
    Browse the repository at this point in the history
  31. Rollup merge of rust-lang#99323 - GuillaumeGomez:fix-gui-flaky, r=Dyl…

    …an-DPC
    
    Fix flakyness of GUI tests
    
    Fixes rust-lang#98163.
    
    All flaky tests seemed to be linked to the search. Since the search JS is loaded when we focus the search input, I think it's possible that we enter faster than the JS is actually loaded. The solution for that would be to do it in two steps: first we write into the search input (`browser-ui-test` adds a small sleep time after such commands) and then we press enter to be sure that it wasn't missed.
    
    cc `@JohnTitor`
    r? `@Dylan-DPC`
    matthiaskrgr authored Jul 16, 2022
    Configuration menu
    Copy the full SHA
    0c6e01b View commit details
    Browse the repository at this point in the history
  32. Rollup merge of rust-lang#99342 - TaKO8Ki:avoid-symbol-to-string-conv…

    …ersions, r=compiler-errors
    
    Avoid some `Symbol` to `String` conversions
    
    This patch removes some Symbol to String conversions.
    matthiaskrgr authored Jul 16, 2022
    Configuration menu
    Copy the full SHA
    6277ac2 View commit details
    Browse the repository at this point in the history
  33. Auto merge of rust-lang#99346 - matthiaskrgr:rollup-p4dl1qt, r=matthi…

    …askrgr
    
    Rollup of 10 pull requests
    
    Successful merges:
    
     - rust-lang#98582 (Allow destructuring opaque types in their defining scopes)
     - rust-lang#99213 (migrate some of `rustc_passes::check_attr`'s diagnostics and derive improvements)
     - rust-lang#99258 (Provide structured suggestion for dropped temp value)
     - rust-lang#99259 (interpret/visitor: support visiting with a PlaceTy)
     - rust-lang#99287 ([rustdoc-json] JSON no longer inlines)
     - rust-lang#99290 (Revert "Highlight conflicting param-env candidates")
     - rust-lang#99316 (docs: add missing word)
     - rust-lang#99317 (Borrow Vec<T, A> as [T])
     - rust-lang#99323 (Fix flakyness of GUI tests)
     - rust-lang#99342 (Avoid some `Symbol` to `String` conversions)
    
    Failed merges:
    
    r? `@ghost`
    `@rustbot` modify labels: rollup
    bors committed Jul 16, 2022
    Configuration menu
    Copy the full SHA
    d5e7f47 View commit details
    Browse the repository at this point in the history
  34. Configuration menu
    Copy the full SHA
    3855e86 View commit details
    Browse the repository at this point in the history
  35. Expand documentation for process_group

    Explain PGID 0, and provide the acronym PGID.
    joshtriplett authored Jul 16, 2022
    Configuration menu
    Copy the full SHA
    629b0b4 View commit details
    Browse the repository at this point in the history
  36. Add a special case for align_offset /w stride != 1

    This generalizes the previous `stride == 1` special case to apply to any
    situation where the requested alignment is divisible by the stride. This
    in turn allows the test case from rust-lang#98809 produce ideal assembly, along
    the lines of:
    
        leaq 15(%rdi), %rax
        andq $-16, %rax
    
    This also produces pretty high quality code for situations where the
    alignment of the input pointer isn’t known:
    
        pub unsafe fn ptr_u32(slice: *const u32) -> *const u32 {
            slice.offset(slice.align_offset(16) as isize)
        }
    
        // =>
    
        movl %edi, %eax
        andl $3, %eax
        leaq 15(%rdi), %rcx
        andq $-16, %rcx
        subq %rdi, %rcx
        shrq $2, %rcx
        negq %rax
        sbbq %rax, %rax
        orq  %rcx, %rax
        leaq (%rdi,%rax,4), %rax
    
    Here LLVM is smart enough to replace the `usize::MAX` special case with
    a branch-less bitwise-OR approach, where the mask is constructed using
    the neg and sbb instructions. This appears to work across various
    architectures I’ve tried.
    
    This change ends up introducing more branches and code in situations
    where there is less knowledge of the arguments. For example when the
    requested alignment is entirely unknown. This use-case was never really
    a focus of this function, so I’m not particularly worried, especially
    since llvm-mca is saying that the new code is still appreciably faster,
    despite all the new branching.
    
    Fixes rust-lang#98809.
    Sadly, this does not help with rust-lang#72356.
    nagisa committed Jul 16, 2022
    Configuration menu
    Copy the full SHA
    62a182c View commit details
    Browse the repository at this point in the history
  37. Stabilize let_chains

    c410-f3r committed Jul 16, 2022
    Configuration menu
    Copy the full SHA
    3266460 View commit details
    Browse the repository at this point in the history
  38. Auto merge of rust-lang#98866 - nagisa:nagisa/align-offset-wroom, r=M…

    …ark-Simulacrum
    
    Add a special case for align_offset /w stride != 1
    
    This generalizes the previous `stride == 1` special case to apply to any
    situation where the requested alignment is divisible by the stride. This
    in turn allows the test case from rust-lang#98809 produce ideal assembly, along
    the lines of:
    
        leaq 15(%rdi), %rax
        andq $-16, %rax
    
    This also produces pretty high quality code for situations where the
    alignment of the input pointer isn’t known:
    
        pub unsafe fn ptr_u32(slice: *const u32) -> *const u32 {
            slice.offset(slice.align_offset(16) as isize)
        }
    
        // =>
    
        movl %edi, %eax
        andl $3, %eax
        leaq 15(%rdi), %rcx
        andq $-16, %rcx
        subq %rdi, %rcx
        shrq $2, %rcx
        negq %rax
        sbbq %rax, %rax
        orq  %rcx, %rax
        leaq (%rdi,%rax,4), %rax
    
    Here LLVM is smart enough to replace the `usize::MAX` special case with
    a branch-less bitwise-OR approach, where the mask is constructed using
    the neg and sbb instructions. This appears to work across various
    architectures I’ve tried.
    
    This change ends up introducing more branches and code in situations
    where there is less knowledge of the arguments. For example when the
    requested alignment is entirely unknown. This use-case was never really
    a focus of this function, so I’m not particularly worried, especially
    since llvm-mca is saying that the new code is still appreciably faster,
    despite all the new branching.
    
    Fixes rust-lang#98809.
    Sadly, this does not help with rust-lang#72356.
    bors committed Jul 16, 2022
    Configuration menu
    Copy the full SHA
    db41351 View commit details
    Browse the repository at this point in the history
  39. Add regression test for rust-lang#95829

    Signed-off-by: Yuki Okushi <jtitor@2k36.org>
    JohnTitor committed Jul 16, 2022
    Configuration menu
    Copy the full SHA
    a94e6c7 View commit details
    Browse the repository at this point in the history

Commits on Jul 17, 2022

  1. Rollup merge of rust-lang#94927 - c410-f3r:stabilize-let-chains, r=jo…

    …shtriplett
    
    Stabilize `let_chains` in Rust 1.64
    
    # Stabilization proposal
    
    This PR proposes the stabilization of `#![feature(let_chains)]` in a future-compatibility way that will allow the **possible** addition of the `EXPR is PAT` syntax.
    
    Tracking issue: rust-lang#53667
    Version: 1.64 (beta => 2022-08-11, stable => 2022-10-22).
    
    ## What is stabilized
    
    The ability to chain let expressions along side local variable declarations or ordinary conditional expressions. For example:
    
    ```rust
    pub enum Color {
        Blue,
        Red,
        Violet,
    }
    
    pub enum Flower {
        Rose,
        Tulip,
        Violet,
    }
    
    pub fn roses_are_red_violets_are_blue_printer(
        (first_flower, first_flower_color): (Flower, Color),
        (second_flower, second_flower_color): (Flower, Color),
        pick_up_lines: &[&str],
    ) {
        if let Flower::Rose = first_flower
            && let Color::Red = first_flower_color
            && let Flower::Violet = second_flower
            && let Color::Blue = second_flower_color
            && let &[first_pick_up_line, ..] = pick_up_lines
        {
            println!("Roses are red, violets are blue, {}", first_pick_up_line);
        }
    }
    
    fn main() {
        roses_are_red_violets_are_blue_printer(
            (Flower::Rose, Color::Red),
            (Flower::Violet, Color::Blue),
            &["sugar is sweet and so are you"],
        );
    }
    ```
    
    ## Motivation
    
    The main motivation for this feature is improving readability, ergonomics and reducing paper cuts.
    
    For more examples, see the [RFC](https://github.com/rust-lang/rfcs/blob/master/text/2497-if-let-chains.md).
    
    ## What isn't stabilized
    
    * Let chains in match guards (`if_let_guard`)
    
    * Resolution of divergent non-terminal matchers
    
    * The `EXPR is PAT` syntax
    
    ## History
    
    * On 2017-12-24, [RFC: if- and while-let-chains](rust-lang/rfcs#2260)
    * On 2018-07-12, [eRFC: if- and while-let-chains, take 2](rust-lang/rfcs#2497)
    * On 2018-08-24, [Tracking issue for eRFC 2497, "if- and while-let-chains, take 2](rust-lang#53667)
    * On 2019-03-19, [Run branch cleanup after copy prop](rust-lang#59290)
    * On 2019-03-26, [Generalize diagnostic for x = y where bool is the expected type](rust-lang#59439)
    * On 2019-04-24, [Introduce hir::ExprKind::Use and employ in for loop desugaring](rust-lang#60225)
    * On 2019-03-19, [[let_chains, 1/6] Remove hir::ExprKind::If](rust-lang#59288)
    * On 2019-05-15, [[let_chains, 2/6] Introduce Let(..) in AST, remove IfLet + WhileLet and parse let chains](rust-lang#60861)
    * On 2019-06-20, [[let_chains, 3/6] And then there was only Loop](rust-lang#61988)
    * On 2020-11-22, [Reintroduce hir::ExprKind::If](rust-lang#79328)
    * On 2020-12-24, [Introduce hir::ExprKind::Let - Take 2](rust-lang#80357)
    * On 2021-02-19, [Lower condition of if expression before it's "then" block](rust-lang#82308)
    * On 2021-09-01, [Fix drop handling for `if let` expressions](rust-lang#88572)
    * On 2021-09-04, [Formally implement let chains](rust-lang#88642)
    * On 2022-01-19, [Add tests to ensure that let_chains works with if_let_guard](rust-lang#93086)
    * On 2022-01-18, [Introduce `enhanced_binary_op` feature](rust-lang#93049)
    * On 2022-01-22, [Fix `let_chains` and `if_let_guard` feature flags](rust-lang#93213)
    * On 2022-02-25, [Initiate the inner usage of `let_chains`](rust-lang#94376)
    * On 2022-01-28, [[WIP] Introduce ast::StmtKind::LetElse to allow the usage of `let_else` with `let_chains`](rust-lang#93437)
    * On 2022-02-26, [1 - Make more use of `let_chains`](rust-lang#94396)
    * On 2022-02-26, [2 - Make more use of `let_chains`](rust-lang#94400)
    * On 2022-02-27, [3 - Make more use of `let_chains`](rust-lang#94420)
    * On 2022-02-28, [4 - Make more use of `let_chains`](rust-lang#94445)
    * On 2022-02-28, [5 - Make more use of `let_chains`](rust-lang#94448)
    * On 2022-02-28, [6 - Make more use of `let_chains`](rust-lang#94465)
    * On 2022-03-01, [7 - Make more use of `let_chains`](rust-lang#94476)
    * On 2022-03-01, [8 - Make more use of `let_chains`](rust-lang#94484)
    * On 2022-03-01, [9 - Make more use of `let_chains`](rust-lang#94498)
    * On 2022-03-08, [Warn users about `||` in let chain expressions](rust-lang#94754)
    
    From the first RFC (2017-12-24) to the theoretical future stabilization day (2022-10-22), it can be said that this feature took 4 years, 9 months and 28 days of research, development, discussions, agreements and headaches to be settled.
    
    ## Divergent non-terminal matchers
    
    More specifically, rust-lang#86730.
    
    ```rust
    macro_rules! mac {
        ($e:expr) => {
            if $e {
                true
            } else {
                false
            }
        };
    }
    
    fn main() {
        // OK!
        assert_eq!(mac!(true && let 1 = 1), true);
    
        // ERROR! Anything starting with `let` is not considered an expression
        assert_eq!(mac!(let 1 = 1 && true), true);
    }
    ```
    
    To the best of my knowledge, such error or divergence is orthogonal, does not prevent stabilization and can be tackled independently in the near future or effectively in the next Rust 2024 edition. If not, then https://github.com/c410-f3r/rust/tree/let-macro-blah contains a set of changes that will consider `let` an expression.
    
    It is possible that none of the solutions above satisfies all applicable constraints but I personally don't know of any other plausible answers.
    
    ## Alternative syntax
    
    Taking into account the usefulness of this feature and the overwhelming desire to use both now and in the past, `let PAT = EXPR` will be utilized for stabilization but it doesn't or shall create any obstacle for a **possible** future addition of `EXPR is PAT`.
    
    The introductory snippet would then be written as the following.
    
    ```rust
    if first_flower is Flower::Rose
        && first_flower_color is Color::Red
        && second_flower is Flower::Violet
        && second_flower_color is Color::Blue
        && pick_up_lines is &[first_pick_up_line, ..]
    {
        println!("Roses are red, violets are blue, {}", first_pick_up_line);
    }
    ```
    
    Just to reinforce, this PR only unblocks a **possible** future road for `EXPR is PAT` and does emphasize what is better or what is worse.
    
    ## Tests
    
    * [Verifies the drop order of let chains and ensures it won't change in the future in an unpredictable way](https://github.com/rust-lang/rust/blob/master/src/test/ui/mir/mir_let_chains_drop_order.rs)
    
    * [AST lowering does not wrap let chains in an `DropTemps` expression](https://github.com/rust-lang/rust/blob/master/src/test/ui/rfc-2497-if-let-chains/ast-lowering-does-not-wrap-let-chains.rs)
    
    * [Checks pretty printing output](https://github.com/rust-lang/rust/blob/master/src/test/ui/rfc-2497-if-let-chains/ast-pretty-check.rs)
    
    * [Verifies uninitialized variables due to MIR modifications](https://github.com/rust-lang/rust/blob/master/src/test/ui/rfc-2497-if-let-chains/chains-without-let.rs)
    
    * [A collection of statements where `let` expressions are forbidden](https://github.com/rust-lang/rust/blob/master/src/test/ui/rfc-2497-if-let-chains/disallowed-positions.rs)
    
    * [All or at least most of the places where let chains are allowed](https://github.com/rust-lang/rust/blob/master/src/test/ui/rfc-2497-if-let-chains/feature-gate.rs)
    
    * [Ensures that irrefutable lets are allowed in let chains](https://github.com/rust-lang/rust/blob/master/src/test/ui/rfc-2497-if-let-chains/irrefutable-lets.rs)
    
    * [issue-88498.rs](https://github.com/rust-lang/rust/blob/master/src/test/ui/rfc-2497-if-let-chains/issue-88498.rs), [issue-90722.rs](https://github.com/rust-lang/rust/blob/master/src/test/ui/rfc-2497-if-let-chains/issue-90722.rs), [issue-92145.rs](https://github.com/rust-lang/rust/blob/master/src/test/ui/rfc-2497-if-let-chains/issue-92145.rs) and [issue-93150.rs](https://github.com/rust-lang/rust/blob/master/src/test/ui/rfc-2497-if-let-chains/issue-93150.rs) were bugs found by third parties and fixed overtime.
    
    * [Indexing was triggering a ICE due to a wrongly constructed MIR graph](https://github.com/rust-lang/rust/blob/master/src/test/ui/rfc-2497-if-let-chains/no-double-assigments.rs)
    
    * [Protects the precedence of `&&` in relation to other things](https://github.com/rust-lang/rust/blob/master/src/test/ui/rfc-2497-if-let-chains/protect-precedences.rs)
    
    * [`let_chains`, as well as `if_let_guard`, has a valid MIR graph that evaluates conditional expressions correctly](https://github.com/rust-lang/rust/blob/master/src/test/ui/rfc-2497-if-let-chains/then-else-blocks.rs)
    
    Most of the infra-structure used by let chains is also used by `if` expressions in stable compiler versions since rust-lang#80357 and rust-lang#88572. As a result, no bugs were found since the integration of rust-lang#88642.
    
    ## Possible future work
    
    * Let chains in match guards is implemented and working but stabilization is blocked by `if_let_guard`.
    
    * The usage of `let_chains` with `let_else` is possible but not implemented. Regardless, one attempt was introduced and closed in rust-lang#93437.
    
    Thanks `@Centril` for creating the RFC and huge thanks (again) to `@matthewjasper` for all the reviews, mentoring and MIR implementations.
    
    Fixes rust-lang#53667
    JohnTitor authored Jul 17, 2022
    Configuration menu
    Copy the full SHA
    353d018 View commit details
    Browse the repository at this point in the history
  2. Rollup merge of rust-lang#97915 - tbu-:pr_os_string_fmt_write, r=josh…

    …triplett
    
    Implement `fmt::Write` for `OsString`
    
    This allows to format into an `OsString` without unnecessary
    allocations. E.g.
    
    ```
    let mut temp_filename = path.into_os_string();
    write!(&mut temp_filename, ".tmp.{}", process::id());
    ```
    JohnTitor authored Jul 17, 2022
    Configuration menu
    Copy the full SHA
    48cf43b View commit details
    Browse the repository at this point in the history
  3. Rollup merge of rust-lang#99036 - TaKO8Ki:fix-test-for-88138, r=compi…

    …ler-errors
    
    Add `#[test]` to functions in test modules
    
    I implemented a suggestion in rust-lang#91770, but the ui test I created was inadequate and I have fixed that.
    JohnTitor authored Jul 17, 2022
    Configuration menu
    Copy the full SHA
    0748638 View commit details
    Browse the repository at this point in the history
  4. Rollup merge of rust-lang#99088 - niklasf:stabilize-process_set_proce…

    …ss_group, r=joshtriplett
    
    Document and stabilize process_set_process_group
    
    Tracking issue: rust-lang#93857
    
    FCP finished here: rust-lang#93857 (comment)
    JohnTitor authored Jul 17, 2022
    Configuration menu
    Copy the full SHA
    f49d267 View commit details
    Browse the repository at this point in the history
  5. Rollup merge of rust-lang#99302 - yaahc:gma-tracking-issue, r=joshtri…

    …plett
    
    add tracking issue to generic member access APIs
    
    Missed as part of rust-lang#98072
    JohnTitor authored Jul 17, 2022
    Configuration menu
    Copy the full SHA
    28cce68 View commit details
    Browse the repository at this point in the history
  6. Rollup merge of rust-lang#99306 - JohnTitor:stabilize-future-poll-fn,…

    … r=joshtriplett
    
    Stabilize `future_poll_fn`
    
    FCP is done: rust-lang#72302 (comment)
    Closes rust-lang#72302
    
    r? `@joshtriplett` as you started FCP
    
    Signed-off-by: Yuki Okushi <jtitor@2k36.org>
    JohnTitor authored Jul 17, 2022
    Configuration menu
    Copy the full SHA
    5052769 View commit details
    Browse the repository at this point in the history
  7. Rollup merge of rust-lang#99354 - JohnTitor:issue-95829, r=compiler-e…

    …rrors
    
    Add regression test for rust-lang#95829
    
    Closes rust-lang#95829
    r? `@compiler-errors`
    
    Signed-off-by: Yuki Okushi <jtitor@2k36.org>
    JohnTitor authored Jul 17, 2022
    Configuration menu
    Copy the full SHA
    1d19323 View commit details
    Browse the repository at this point in the history
  8. Auto merge of rust-lang#99362 - JohnTitor:rollup-4d5zo9d, r=JohnTitor

    Rollup of 7 pull requests
    
    Successful merges:
    
     - rust-lang#94927 (Stabilize `let_chains` in Rust 1.64)
     - rust-lang#97915 (Implement `fmt::Write` for `OsString`)
     - rust-lang#99036 (Add `#[test]` to functions in test modules)
     - rust-lang#99088 (Document and stabilize process_set_process_group)
     - rust-lang#99302 (add tracking issue to generic member access APIs)
     - rust-lang#99306 (Stabilize `future_poll_fn`)
     - rust-lang#99354 (Add regression test for rust-lang#95829)
    
    Failed merges:
    
    r? `@ghost`
    `@rustbot` modify labels: rollup
    bors committed Jul 17, 2022
    Configuration menu
    Copy the full SHA
    1cd72b7 View commit details
    Browse the repository at this point in the history
  9. Upgrade hashbrown to 0.12.3

    This fixes a double-free in the `clone_from` function if dropping an
    existing element in the table panics. See
    rust-lang/hashbrown#348 for more details.
    
    The indexmap crate is also updated to use the latest hashbrown version.
    Amanieu committed Jul 17, 2022
    Configuration menu
    Copy the full SHA
    00fd613 View commit details
    Browse the repository at this point in the history