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

Rollup of 13 pull requests #88366

Closed
wants to merge 49 commits into from

Commits on Aug 17, 2021

  1. Configuration menu
    Copy the full SHA
    da25af2 View commit details
    Browse the repository at this point in the history

Commits on Aug 21, 2021

  1. Configuration menu
    Copy the full SHA
    f1e8607 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    d0b482a View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    0fa3b4f View commit details
    Browse the repository at this point in the history
  4. Use an exhaustive match in Node::ident() and add docs

    This should cause a compiler error in the future if more variants are
    added without `Node::ident()` being updated.
    camelid committed Aug 21, 2021
    Configuration menu
    Copy the full SHA
    02ed23c View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    08ceac8 View commit details
    Browse the repository at this point in the history

Commits on Aug 22, 2021

  1. Bless tests

    camelid committed Aug 22, 2021
    Configuration menu
    Copy the full SHA
    19f4510 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    f28793d View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    5f5afba View commit details
    Browse the repository at this point in the history
  4. Refactor: added #[no_mangle]

    Sl1mb0 committed Aug 22, 2021
    Configuration menu
    Copy the full SHA
    7095dff View commit details
    Browse the repository at this point in the history
  5. Fix: moved #[no_mangle]

    Sl1mb0 committed Aug 22, 2021
    Configuration menu
    Copy the full SHA
    66e95b1 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    eeb0b52 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    0c9e23c View commit details
    Browse the repository at this point in the history

Commits on Aug 23, 2021

  1. Configuration menu
    Copy the full SHA
    0ac601d View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    a519095 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    0f7702e View commit details
    Browse the repository at this point in the history
  4. handle ascription type op in NLL HRTB diagnostics

    Refactors the `type_op_ascribe_user_type` query into a version which
    accepts a span, and uses it in the nicer NLL HRTB bound region errors.
    lqd committed Aug 23, 2021
    Configuration menu
    Copy the full SHA
    820e268 View commit details
    Browse the repository at this point in the history
  5. Refactor: disabled frame pointer; consolidated unsupported register e…

    …rrors; added register prefix
    Sl1mb0 committed Aug 23, 2021
    Configuration menu
    Copy the full SHA
    05cd587 View commit details
    Browse the repository at this point in the history
  6. Fix: made suggested change

    Sl1mb0 committed Aug 23, 2021
    Configuration menu
    Copy the full SHA
    a9f6237 View commit details
    Browse the repository at this point in the history
  7. Update NLL HRTB type ascription blessed expectations

    Some of these tests have reached parity with the migrate-mode output.
    lqd committed Aug 23, 2021
    Configuration menu
    Copy the full SHA
    7b0e564 View commit details
    Browse the repository at this point in the history

Commits on Aug 24, 2021

  1. Fix: added necessary prefix

    Sl1mb0 committed Aug 24, 2021
    Configuration menu
    Copy the full SHA
    96381d3 View commit details
    Browse the repository at this point in the history
  2. Update cargo

    ehuss committed Aug 24, 2021
    Configuration menu
    Copy the full SHA
    07d3729 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    4d8d72f View commit details
    Browse the repository at this point in the history
  4. Add additional match test case

    roxelo committed Aug 24, 2021
    Configuration menu
    Copy the full SHA
    1335b4c View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    68b1bfc View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    4a9ba65 View commit details
    Browse the repository at this point in the history

Commits on Aug 25, 2021

  1. Configuration menu
    Copy the full SHA
    a216d66 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    d7d122f View commit details
    Browse the repository at this point in the history
  3. trailing whitespace

    nikomatsakis authored Aug 25, 2021
    Configuration menu
    Copy the full SHA
    88bcd44 View commit details
    Browse the repository at this point in the history
  4. Fix debugger stepping behavior around match expressions

    Previously, we would set up the source lines for `match` expressions so
    that the code generated to perform the test of the scrutinee was matched
    to the line of the arm that required the test and then jump from the arm
    block to the "next" block was matched to all of the lines in the `match`
    expression.
    
    While that makes sense, it has the side effect of causing strange
    stepping behavior in debuggers.
    
    I've changed the source information so that all of the generated tests
    are sourced to `match {scrutinee}` and the jumps are sourced to the last
    line of the block they are inside. This resolves the weird stepping
    behavior in all debuggers and resolves some instances of "ambiguous
    symbol" errors in WinDbg preventing the user from setting breakpoints at
    `match` expressions.
    wesleywiser committed Aug 25, 2021
    Configuration menu
    Copy the full SHA
    0a42dfc View commit details
    Browse the repository at this point in the history
  5. Adjust spans

    * Highlight the whole pattern if it has no fields
    * Highlight the whole definition if it has no fields
    * Only highlight the pattern name if the pattern is multi-line
    * Determine whether a pattern is multi-line based on distance from name
      to last field, rather than first field
    camelid committed Aug 25, 2021
    Configuration menu
    Copy the full SHA
    8a6501d View commit details
    Browse the repository at this point in the history
  6. Revert "Add type of a let tait test impl trait straight in let"

    This reverts commit dbadab5.
    This is not part of TAITs, so, if tested should probably be done
    elsewhere.
    spastorino committed Aug 25, 2021
    Configuration menu
    Copy the full SHA
    5df5659 View commit details
    Browse the repository at this point in the history

Commits on Aug 26, 2021

  1. Configuration menu
    Copy the full SHA
    84a2661 View commit details
    Browse the repository at this point in the history
  2. Adjust linking order of static nobundle libraries

    Link the static libraries with "-bundle" modifier from upstream rust crate
    right after linking this rust crate. Some linker such as GNU linker
    `ld.bdf` treat order of linking as order of dependency. After this change,
    static libraries with "-bundle" modifier is linked in the same order as
    "+bundle" modifier. So we can change the value of "bundle" modifier without
    causing linking error.
    12101111 committed Aug 26, 2021
    Configuration menu
    Copy the full SHA
    118df1c View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    4924e34 View commit details
    Browse the repository at this point in the history
  4. RustWrapper: adapt to LLVM change 0f45c16

    The above-mentioned commit (part of the LLVM 14 development cycle)
    removes a method that rustc uses somewhat extensively. We mostly switch
    to lower-level methods that exist in all versions of LLVM we use, so no
    new ifdef logic is required in most cases.
    durin42 committed Aug 26, 2021
    Configuration menu
    Copy the full SHA
    027db5d View commit details
    Browse the repository at this point in the history
  5. Rollup merge of rust-lang#87832 - wesleywiser:fix_match_step, r=david…

    …twco
    
    Fix debugger stepping behavior with `match` expressions
    
    Previously, we would set up the source lines for `match` expressions so
    that the code generated to perform the test of the scrutinee was matched
    to the line of the arm that required the test and then jump from the arm
    block to the "next" block was matched to all of the lines in the `match`
    expression.
    
    While that makes sense, it has the side effect of causing strange
    stepping behavior in debuggers.
    
    I've changed the source information so that all of the generated tests
    are sourced to `match {scrutinee}` and the jumps are sourced to the last
    line of the block they are inside. This resolves the weird stepping
    behavior in all debuggers and resolves some instances of "ambiguous
    symbol" errors in WinDbg preventing the user from setting breakpoints at
    `match` expressions.
    
    Before:
    
    https://user-images.githubusercontent.com/831192/128577421-ee0c9c03-da28-4d16-997a-d57988a7bb7f.mp4
    
    After:
    
    https://user-images.githubusercontent.com/831192/128577433-2ceab04d-953e-4e31-9387-93f049c71ff3.mp4
    
    Fixes rust-lang#87817
    Dylan-DPC authored Aug 26, 2021
    Configuration menu
    Copy the full SHA
    6768a2d View commit details
    Browse the repository at this point in the history
  6. Rollup merge of rust-lang#88123 - camelid:tup-pat-precise-spans, r=es…

    …tebank
    
    Make spans for tuple patterns in E0023 more precise
    
    As suggested in rust-lang#86307. Closes rust-lang#86307.
    
    r? ```@estebank```
    Dylan-DPC authored Aug 26, 2021
    Configuration menu
    Copy the full SHA
    cfe4446 View commit details
    Browse the repository at this point in the history
  7. Rollup merge of rust-lang#88216 - kornelski:from_layout_err, r=kennytm

    Don't stabilize creation of TryReserveError instances
    
    rust-lang#48043 + rust-lang#87993 (comment)
    Dylan-DPC authored Aug 26, 2021
    Configuration menu
    Copy the full SHA
    9a9af0d View commit details
    Browse the repository at this point in the history
  8. Rollup merge of rust-lang#88227 - 12101111:nobundle-link-order, r=pet…

    …rochenkov
    
    Adjust linking order of static nobundle libraries
    
    Link the static libraries with "-bundle" modifier from upstream rust crate right after linking this rust crate.
    Some linker such as GNU linker `ld.bdf` treat order of linking as order of dependency.
    
    After this change, static libraries with "-bundle" modifier is linked in the same order as "+bundle" modifier.
    So we can change the value of "bundle" modifier without causing linking error.
    
    fix: rust-lang#87541
    
    r? `@petrochenkov`
    Dylan-DPC authored Aug 26, 2021
    Configuration menu
    Copy the full SHA
    fa8d153 View commit details
    Browse the repository at this point in the history
  9. Rollup merge of rust-lang#88245 - Sl1mb0:s390-asm, r=Amanieu

    S390x inline asm
    
    This adds register definitions and constraint codes for the s390x general and floating point registers necessary for fixing rust-lang#85931; as well as a few tests.
    
    Further testing is needed, but I am a little unsure of what specific tests should be added to `src/test/assembly/asm/s390x.rs` to address this.
    Dylan-DPC authored Aug 26, 2021
    Configuration menu
    Copy the full SHA
    689ec97 View commit details
    Browse the repository at this point in the history
  10. Rollup merge of rust-lang#88250 - rusticstuff:macos-lld, r=nagisa

    Make `-Z gcc-ld=lld` work for Apple targets
    
    `-Z gcc-ld=lld` was introduced in rust-lang#85961. It does not work on Macos because lld needs be either named `ld64` or passed `-flavor darwin` as the first two arguments in order to select the Mach-O flavor. Rust invokes cc (=clang) on Macos for linking which calls `ld` as linker binary and not `ld64`, so just creating an `ld64` binary and modifying the search path with `-B` does not work.
    
    In order to solve this patch does:
    * Set the `lld_flavor` for all Apple-derived targets to `LldFlavor::Ld64`. As far as I can see this actually works towards fixing `-Xlinker=rust-lld` as all those targets use the Mach-O object format.
    * Copy/hardlink rust-lld to the gcc-ld subdirectory as ld64 next to ld.
    * If `-Z gcc-ld=lld` is used and the target lld flavor is Ld64 add `-fuse-ld=/path/to/ld64` to the linker invocation.
    
    Fixes rust-lang#86945.
    Dylan-DPC authored Aug 26, 2021
    Configuration menu
    Copy the full SHA
    5fb3ca9 View commit details
    Browse the repository at this point in the history
  11. Rollup merge of rust-lang#88270 - lqd:hrtb-type-ascription, r=nikomat…

    …sakis
    
    Handle type ascription type ops in NLL HRTB diagnostics
    
    Currently, there are still a few cases of the "higher-ranked subtype error" of yore, 4 of which are related to type ascription.
    
    This PR is a follow-up to rust-lang#86700, adding support for type ascription type ops, and makes 3 of these tests output the same diagnostics in NLL mode as the migrate mode (and 1 is now much closer, especially if you ignore that it already outputs an additional error in NLL mode -- which could be a duplicate caused by a lack of normalization like [these comments point out](https://github.com/rust-lang/rust/blob/9583fd1bdd0127328e25e5b8c24dff575ec2c86b/compiler/rustc_traits/src/type_op.rs#L122-L157), or an imprecision in some parts of normalization as [described here](rust-lang#86700 (comment))).
    
    Since we discussed these recently:
    - [here](rust-lang#86700 (comment)), cc ```@matthewjasper,```
    - and [here](rust-lang#57374 (comment)), cc ```@Aaron1011.```
    
    It should only leave [this TAIT test](https://github.com/rust-lang/rust/blob/9583fd1bdd0127328e25e5b8c24dff575ec2c86b/src/test/ui/type-alias-impl-trait/issue-57611-trait-alias.rs) as still emitting [the terse error](https://github.com/rust-lang/rust/blob/9583fd1bdd0127328e25e5b8c24dff575ec2c86b/src/test/ui/type-alias-impl-trait/issue-57611-trait-alias.nll.stderr).
    
    r? ```@estebank``` (so that they shake their fist at NLL's general direction less often) or ```@nikomatsakis``` or matthew or aaron, the more the merrier.
    Dylan-DPC authored Aug 26, 2021
    Configuration menu
    Copy the full SHA
    246b0cd View commit details
    Browse the repository at this point in the history
  12. Rollup merge of rust-lang#88278 - ehuss:update-cargo, r=ehuss

    Update cargo
    
    16 commits in e96bdb0c3d0a418e7fcd7fbd69be08abf830b4bc..9b81660b79832f92512edd4c29059a9ff88fcb6c
    2021-08-17 22:58:47 +0000 to 2021-08-23 20:04:47 +0000
    - Fix panic with build-std of a proc-macro. (rust-lang/cargo#9834)
    - Fix typos “a”→“an” (rust-lang/cargo#9821)
    - Fix typo in git-authentication.md (rust-lang/cargo#9832)
    - Add some debug logging for `cargo fix` (rust-lang/cargo#9831)
    - Add documentation about third-party registries. (rust-lang/cargo#9830)
    - unset the FIX_ENV when executing the real rustc (rust-lang/cargo#9818)
    - Allow crate download by checksum (rust-lang/cargo#9801)
    - Emit warning for migrating to unstable edition in stable channel (rust-lang/cargo#9792)
    - Warning for no lib dependencies (rust-lang/cargo#9771)
    - Temporarily disable extern-html-root-url test. (rust-lang/cargo#9824)
    - Move `tmp` test directory. (rust-lang/cargo#9814)
    - Fix test incorrectly validating CARGO_PKG_LICENSE_FILE. (rust-lang/cargo#9813)
    - Implement `[future-incompat-report]` config section (rust-lang/cargo#9774)
    - Bump curl. (rust-lang/cargo#9809)
    - Determine packages to install prior to installing (rust-lang/cargo#9793)
    - Show feature resolver differences for dev-dependencies. (rust-lang/cargo#9803)
    Dylan-DPC authored Aug 26, 2021
    Configuration menu
    Copy the full SHA
    76db2ab View commit details
    Browse the repository at this point in the history
  13. Rollup merge of rust-lang#88280 - sexxi-goose:non-exhaustive, r=nikom…

    …atsakis
    
    Handle match statements with non exhaustive variants in closures
    
    This PR ensures that the behavior for match statements with non exhaustive variants is the same inside and outside closures.
    
    If we have a non-exhaustive SingleVariant which is defined in a different crate, then we should handle the case the same way we would handle a MultiVariant: borrow the match discriminant.
    
    Closes rust-lang/project-rfc-2229#59
    r? ``@nikomatsakis``
    Dylan-DPC authored Aug 26, 2021
    Configuration menu
    Copy the full SHA
    a4527ed View commit details
    Browse the repository at this point in the history
  14. Rollup merge of rust-lang#88289 - durin42:llvm-14-attrs, r=nikic

    Fixes for LLVM change 0f45c16
    
    More details in the individual commit messages, but the summary is: LLVM deleted an unused-to-them method that we used, we worked around it to avoid annoying cleanup/restructuring in the Rust-side code.
    Dylan-DPC authored Aug 26, 2021
    Configuration menu
    Copy the full SHA
    bc669ac View commit details
    Browse the repository at this point in the history
  15. Rollup merge of rust-lang#88320 - sexxi-goose:issue-88103, r=nikomats…

    …akis
    
    type_implements_trait consider obligation failure on overflow
    
    Fixes: rust-lang#88103
    Dylan-DPC authored Aug 26, 2021
    Configuration menu
    Copy the full SHA
    b6c5f72 View commit details
    Browse the repository at this point in the history
  16. Rollup merge of rust-lang#88332 - spastorino:argument-types-tait-test…

    …, r=oli-obk
    
    Add argument types tait tests
    
    r? `@oli-obk`
    
    Related to rust-lang#86727
    Dylan-DPC authored Aug 26, 2021
    Configuration menu
    Copy the full SHA
    41fbafa View commit details
    Browse the repository at this point in the history
  17. Rollup merge of rust-lang#88346 - spastorino:revert-type-of-a-let2, r…

    …=jackh726
    
    Revert "Add type of a let tait test impl trait straight in let"
    
    This reverts commit dbadab5.
    This is not part of TAITs, so, if tested should probably be done
    elsewhere.
    
    r? ```@oli-obk```
    
    This is similar to what I was commenting here rust-lang#88332 (comment)
    These is not part of TAITs so should not live in type-alias-impl-trait test directory.
    I'm going to avoid adding this kind of tests in `type-alias-impl-trait` test directory and avoid thinking about them in this pass.
    Dylan-DPC authored Aug 26, 2021
    Configuration menu
    Copy the full SHA
    ea8f66f View commit details
    Browse the repository at this point in the history