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 11 pull requests #84899

Closed
wants to merge 28 commits into from

Commits on Apr 29, 2021

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

Commits on Apr 30, 2021

  1. Fix linker_args with --target=sparcv9-sun-solaris

    Moved -z ignore to add_as_needed
    
    Trying to cross-compile for sparcv9-sun-solaris
    getting an error message for -zignore
    
    Introduced when -z -ignore was separated here
    22d0ab0
    
    No formatting done
    
    Reproduce
    
    ``` bash
    rustup target add sparcv9-sun-solaris
    cargo new --bin hello && cd hello && cargo run --target=sparcv9-sun-solaris
    ```
    
    config.toml
    
    [target.sparcv9-sun-solaris]
    linker = "gcc"
    iladin committed Apr 30, 2021
    Configuration menu
    Copy the full SHA
    fe68b1a View commit details
    Browse the repository at this point in the history

Commits on May 1, 2021

  1. Configuration menu
    Copy the full SHA
    e40faef View commit details
    Browse the repository at this point in the history
  2. Report coverage 0 of dead blocks

    Fixes: rust-lang#84018
    
    With `-Z instrument-coverage`, coverage reporting of dead blocks
    (for example, blocks dropped because a conditional branch is dropped,
    based on const evaluation) is now supported.
    
    If `instrument-coverage` is enabled, `simplify::remove_dead_blocks()`
    finds all dropped coverage `Statement`s and adds their `code_region`s as
    `Unreachable` coverage `Statement`s to the `START_BLOCK`, so they are
    still included in the coverage map.
    
    Check out the resulting changes in the test coverage reports in this PR.
    richkadel committed May 1, 2021
    Configuration menu
    Copy the full SHA
    0b0d293 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    3fca198 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    dd43d13 View commit details
    Browse the repository at this point in the history

Commits on May 2, 2021

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

Commits on May 3, 2021

  1. use else if in std library

    Clippy: Decreases indentation and improves readability
    
    Signed-off-by: wcampbell <[email protected]>
    wcampbell0x2a committed May 3, 2021
    Configuration menu
    Copy the full SHA
    2e559c8 View commit details
    Browse the repository at this point in the history
  2. Unify rustc and rustdoc parsing of cfg()

    This extracts a new `parse_cfg` function that's used between both.
    
    - Treat `#[doc(cfg(x), cfg(y))]` the same as `#[doc(cfg(x)]
      #[doc(cfg(y))]`. Previously it would be completely ignored.
    - Treat `#[doc(inline, cfg(x))]` the same as `#[doc(inline)]
      #[doc(cfg(x))]`. Previously, the cfg would be ignored.
    - Pass the cfg predicate through to rustc_expand to be validated
    
    Co-authored-by: Vadim Petrochenkov <[email protected]>
    jyn514 and petrochenkov committed May 3, 2021
    Configuration menu
    Copy the full SHA
    6eb4735 View commit details
    Browse the repository at this point in the history
  3. Update ptr docs with regards to ptr::addr_of!

    This updates the documentation since `ptr::addr_of!` and
    `ptr::addr_of_mut!` are now stable. One might remove the distinction
    between the sections `# On packed structs` and `# Examples`, as the old
    section on packed structs was primarily to prevent users of doing unde-
    fined behavior, which is not necessary anymore.
    There is also a new section in "how to obtain a pointer", which referen-
    ces the `ptr::addr_of!` macros.
    
    This commit contains squashed commits from code review.
    
    Co-authored-by: Joshua Nelson <[email protected]>
    Co-authored-by: Mara Bos <[email protected]>
    Co-authored-by: Soveu <[email protected]>
    Co-authored-by: Ralf Jung <[email protected]>
    5 people committed May 3, 2021
    Configuration menu
    Copy the full SHA
    389333a View commit details
    Browse the repository at this point in the history

Commits on May 4, 2021

  1. Configuration menu
    Copy the full SHA
    450d121 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    67f228e View commit details
    Browse the repository at this point in the history
  3. Updating test stderr files

    sunjay committed May 4, 2021
    Configuration menu
    Copy the full SHA
    715a2d4 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    d4c1ade View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    bacfc34 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    0ba2c6a View commit details
    Browse the repository at this point in the history
  7. Valid underscores in hex/octal/binary literal docs

    Currently hex/octal/binary literals with computed values are displayed
    like `0_xff_fff_fffu32`, which is invalid since underscores can't be in
    the middle of integer prefixes. This properly formats prefixed integers.
    syvb committed May 4, 2021
    Configuration menu
    Copy the full SHA
    f84b4c5 View commit details
    Browse the repository at this point in the history
  8. Rollup merge of rust-lang#83004 - sunjay:field-never-read-issue-81658…

    …, r=pnkfelix
    
    Improve diagnostic for when field is never read
    
    Related to (but does not close) rust-lang#81658
    
    This completes the first step of `@pnkfelix's` [mentoring instructions](rust-lang#81658 (comment)) but does not actually improve the diagnostics (yet!). The two tests are heavily reduced versions of code from the original bug report.
    
    I've confirmed that the reduced `field-used-in-ffi` test [fails on nightly](https://play.rust-lang.org/?version=nightly&mode=debug&edition=2018&gist=f0862c89ddca028c55c20a5ed05e679a) but [passes on stable](https://play.rust-lang.org/?version=stable&mode=debug&edition=2018&gist=f0862c89ddca028c55c20a5ed05e679a). This confirms that the regression is reproduced correctly. The `drop-only-field` test is a case that `@pnkfelix` mentioned in his mentoring instructions. It is not a regression, but will come in handy when we make the diagnostic smarter by looking at whether the field type implements `Drop`.
    
    Per the [rustc-dev-guide](https://rustc-dev-guide.rust-lang.org/tests/adding.html), each test includes a comment summarizing what it is about.
    Dylan-DPC authored May 4, 2021
    Configuration menu
    Copy the full SHA
    df4d22a View commit details
    Browse the repository at this point in the history
  9. Rollup merge of rust-lang#83553 - jfrimmel:addr-of, r=m-ou-se

    Update `ptr` docs with regards to `ptr::addr_of!`
    
    This updates the documentation since `ptr::addr_of!` and `ptr::addr_of_mut!` are now stable. One might remove the distinction between the sections `# On packed structs` and `# Examples`, as the old section on packed structs was primarily to prevent users of doing undefined behavior, which is not necessary anymore.
    
    Technically there is now wrong/outdated documentation on stable, but I don't think this is worth a point release 😉
    
    Fixes rust-lang#83509.
    
    `@rustbot` modify labels: T-doc
    Dylan-DPC authored May 4, 2021
    Configuration menu
    Copy the full SHA
    cab0020 View commit details
    Browse the repository at this point in the history
  10. Rollup merge of rust-lang#84017 - Smittyvb:int-literal-underscores, r…

    …=jyn514
    
    Valid underscores in hex/octal/binary literal docs
    
    Currently hex/octal/binary literals with computed values are displayed like `0_xff_fff_fffu32`, which is invalid since underscores can't be in the middle of integer prefixes. This properly formats prefixed integers.
    
    This causes  [`std::u32::MAX`](https://doc.rust-lang.org/std/u32/constant.MAX.html) to be displayed as
    ```rust
    pub const MAX: u32 = u32::MAX; // 0_xff_fff_fffu32
    ```
    
    This PR changes it to be displayed as:
    ```rust
    pub const MAX: u32 = u32::MAX; // 0xffff_ffffu32
    ```
    Dylan-DPC authored May 4, 2021
    Configuration menu
    Copy the full SHA
    b08f9c9 View commit details
    Browse the repository at this point in the history
  11. Rollup merge of rust-lang#84442 - jyn514:doc-cfg, r=petrochenkov

    Unify rustc and rustdoc parsing of `cfg()`
    
    This extracts a new `parse_cfg` function that's used between both.
    
    - Treat `#[doc(cfg(x), cfg(y))]` the same as `#[doc(cfg(x)]
      #[doc(cfg(y))]`. Previously it would be completely ignored.
    - Treat `#[doc(inline, cfg(x))]` the same as `#[doc(inline)]
      #[doc(cfg(x))]`. Previously, the cfg would be ignored.
    - Pass the cfg predicate through to rustc_expand to be validated
    
    Technically this is a breaking change, but doc_cfg is still nightly so I don't think it matters.
    
    Fixes rust-lang#84437.
    
    r? `@petrochenkov`
    Dylan-DPC authored May 4, 2021
    Configuration menu
    Copy the full SHA
    12deb2b View commit details
    Browse the repository at this point in the history
  12. Rollup merge of rust-lang#84468 - iladin:iladin/fix-84467, r=petroche…

    …nkov
    
    Fix#84467 linker_args with --target=sparcv9-sun-solaris
    
    Trying to cross-compile for sparcv9-sun-solaris
    getting a error message for -zignore
    
    Introduced when -z -ignore was seperated here
    22d0ab0
    
    No formatting done
    
    Reproduce
    
    ``` bash
    rustup target add sparcv9-sun-solaris
    cargo new --bin hello && cd hello && cargo run --target=sparcv9-sun-solaris
    ```
    
    config.toml
    
    [target.sparcv9-sun-solaris]
    linker = "gcc"
    Dylan-DPC authored May 4, 2021
    Configuration menu
    Copy the full SHA
    0f0b7c7 View commit details
    Browse the repository at this point in the history
  13. Rollup merge of rust-lang#84712 - joshtriplett:simplify-chdir, r=yaahc

    Simplify chdir implementation and minimize unsafe block
    Dylan-DPC authored May 4, 2021
    Configuration menu
    Copy the full SHA
    a1a0e8c View commit details
    Browse the repository at this point in the history
  14. Rollup merge of rust-lang#84794 - ChrisDenton:dedup-native-libs, r=pe…

    …trochenkov
    
    Deduplicate native libs before they are passed to the linker
    
    Stop spamming the linker with the same native library over and over again, if they directly follow from each other. This would help prevent [this situation](MSxDOS/ntapi#2).
    
    Issue rust-lang#38460 has been open since 2016 so I think it's worth making an incomplete fix that at least addresses the most common symptom and without otherwise changing how Rust handles native libs. This PR is intended to be easy to revert (if necessary) when a more permanent fix is implemented.
    Dylan-DPC authored May 4, 2021
    Configuration menu
    Copy the full SHA
    355f19a View commit details
    Browse the repository at this point in the history
  15. Rollup merge of rust-lang#84797 - richkadel:cover-unreachable-stateme…

    …nts, r=tmandry
    
    Report coverage `0` of dead blocks
    
    Fixes: rust-lang#84018
    
    With `-Z instrument-coverage`, coverage reporting of dead blocks
    (for example, blocks dropped because a conditional branch is dropped,
    based on const evaluation) is now supported.
    
    If `instrument-coverage` is enabled, `simplify::remove_dead_blocks()`
    finds all dropped coverage `Statement`s and adds their `code_region`s as
    `Unreachable` coverage `Statement`s to the `START_BLOCK`, so they are
    still included in the coverage map.
    
    Check out the resulting changes in the test coverage reports in this PR.
    
    I also addressed an outstanding issue/request to move coverage tests from run-make-fulldeps to run-make (in commit 2).
    
    Fixes: rust-lang#83830
    
    r? `@tmandry`
    cc: `@wesleywiser`
    Dylan-DPC authored May 4, 2021
    Configuration menu
    Copy the full SHA
    438bf55 View commit details
    Browse the repository at this point in the history
  16. Rollup merge of rust-lang#84803 - jyn514:duplicate-macros, r=petroche…

    …nkov
    
    Reduce duplication in `impl_dep_tracking_hash` macros
    
    Cherry-picked from rust-lang#84234 since it will be a while until it lands.
    Dylan-DPC authored May 4, 2021
    Configuration menu
    Copy the full SHA
    4a410d4 View commit details
    Browse the repository at this point in the history
  17. Rollup merge of rust-lang#84808 - estebank:issue-84769, r=petrochenkov

    Account for unsatisfied bounds in E0599
    
    Fix rust-lang#84769, follow up to rust-lang#84499, rust-lang#83667.
    Dylan-DPC authored May 4, 2021
    Configuration menu
    Copy the full SHA
    eb5ee09 View commit details
    Browse the repository at this point in the history
  18. Rollup merge of rust-lang#84843 - wcampbell0x2a:use-else-if-let, r=dt…

    …olnay
    
    use else if in std library
    
    Decreases indentation and improves readability
    Dylan-DPC authored May 4, 2021
    Configuration menu
    Copy the full SHA
    7e3cb45 View commit details
    Browse the repository at this point in the history