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 7 pull requests #99707

Merged
merged 14 commits into from
Jul 25, 2022
Merged

Rollup of 7 pull requests #99707

merged 14 commits into from
Jul 25, 2022

Commits on Apr 11, 2022

  1. kmc-solid: Use abort to abort a program

    The current implementation uses a `hlt` instruction, which is the most
    direct way to notify a connected debugger but is not the most flexible
    way. This commit changes it to a call to the `abort` libc function,
    making it possible for a system designer to override its behavior as
    they see fit.
    kawadakk committed Apr 11, 2022
    Configuration menu
    Copy the full SHA
    9d1f82e View commit details
    Browse the repository at this point in the history

Commits on May 29, 2022

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

Commits on Jul 20, 2022

  1. Use non-relocatable code in nofile-limit.rs test

    To avoid using static-pie which is not essential to the test but which
    was reported to cause problems on Void Linux where glibc is build
    without support for static-pie.
    tmiasko committed Jul 20, 2022
    Configuration menu
    Copy the full SHA
    1e83226 View commit details
    Browse the repository at this point in the history

Commits on Jul 23, 2022

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

Commits on Jul 24, 2022

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

Commits on Jul 25, 2022

  1. Improve error messages involving derive and packed.

    There are two errors involving `derive` and `packed`.
    
    ```
    `#[derive]` can't be derived on a `#[repr(packed)]` struct with type or const parameters
    `#[derive]` can't be derived on a `#[repr(packed)]` struct that does not derive Copy
    ```
    The second one overstates things. It is possible to use derive on a
    repr(packed) struct that doesn't derive Copy in two cases.
    - If all the fields within the struct meet the required alignment: 1 for
      `repr(packed)`, or `N` for `repr(packed(N))`.
    - If `Default` is the only trait derived.
    
    This commit improves things in a few ways.
    - Changes the errors to say `$TRAIT can't be derived on this ...`.
      This is more accurate, because it's just $TRAIT and *this* packed
      struct that are a problem, not *all* derived traits on *all* packed
      structs.
    - Adds more details to the "ERROR" lines in the test case, enough to
      distinguish between the two error messages.
    - Adds more cases to the test case that don't cause errors, e.g. `Default`
      derives.
    - Uses a wider variety of builtin traits in the test case, for better coverage.
    nnethercote committed Jul 25, 2022
    Configuration menu
    Copy the full SHA
    168c5b1 View commit details
    Browse the repository at this point in the history
  2. Rollup merge of rust-lang#95040 - frank-king:fix/94981, r=Mark-Simula…

    …crum
    
    protect `std::io::Take::limit` from overflow in `read`
    
    Resolves rust-lang#94981
    JohnTitor authored Jul 25, 2022
    Configuration menu
    Copy the full SHA
    0ecbcbb View commit details
    Browse the repository at this point in the history
  3. Rollup merge of rust-lang#95916 - solid-rs:feat-kmc-solid-abort, r=Ma…

    …rk-Simulacrum
    
    kmc-solid: Use `libc::abort` to abort a program
    
    This PR updates the target-specific abort subroutine for the [`*-kmc-solid_*`](https://doc.rust-lang.org/nightly/rustc/platform-support/kmc-solid.html) Tier 3 targets.
    
    The current implementation uses a `hlt` instruction, which is the most direct way to notify a connected debugger but is not the most flexible way. This PR changes it to call the `abort` libc function, making it possible for a system designer to override its behavior as they see fit.
    JohnTitor authored Jul 25, 2022
    Configuration menu
    Copy the full SHA
    e726af8 View commit details
    Browse the repository at this point in the history
  4. Rollup merge of rust-lang#99494 - tmiasko:no-pie, r=Mark-Simulacrum

    Use non-relocatable code in nofile-limit.rs test
    
    To avoid using static-pie which is not essential to the test but which
    was reported to cause problems on Void Linux where glibc is build
    without support for static-pie.
    JohnTitor authored Jul 25, 2022
    Configuration menu
    Copy the full SHA
    65d2392 View commit details
    Browse the repository at this point in the history
  5. Rollup merge of rust-lang#99581 - nnethercote:improve-derive-packed-e…

    …rrors, r=estebank
    
    Improve error messages involving `derive` and `packed`.
    
    There are two errors involving `derive` and `packed`.
    
    ```
    `#[derive]` can't be derived on a `#[repr(packed)]` struct with type or const parameters
    `#[derive]` can't be derived on a `#[repr(packed)]` struct that does not derive Copy
    ```
    The second one overstates things. It is possible to use derive on a
    repr(packed) struct that doesn't derive Copy in two cases.
    - If all the fields within the struct meet the required alignment: 1 for
      `repr(packed)`, or `N` for `repr(packed(N))`.
    - If `Default` is the only trait derived.
    
    This commit improves things in a few ways.
    - Changes the errors to say `this trait can't be derived on this ...`.
      This is more accurate, because it's just *this* trait and *this*
      packed struct that are a problem, not *all* derived traits on *all*
      packed structs.
    - Adds more details to the "ERROR" lines in the test case, enough to
      distinguish between the two error messages.
    - Adds more cases to the test case that don't cause errors, e.g. `Default`
      derives.
    - Uses a wider variety of builtin traits in the test case, for better coverage.
    
    r? `@estebank`
    JohnTitor authored Jul 25, 2022
    Configuration menu
    Copy the full SHA
    921cfbe View commit details
    Browse the repository at this point in the history
  6. Rollup merge of rust-lang#99643 - daxpedda:sign-ext-wasm, r=oli-obk

    Add `sign-ext` target feature to the WASM target
    
    Some target features are still missing from that list.
    See rust-lang#97808 for basically the same PR by `@alexcrichton.`
    
    Related issue: rust-lang#96472.
    PR introducing this issue: rust-lang#87402.
    JohnTitor authored Jul 25, 2022
    Configuration menu
    Copy the full SHA
    f4c2527 View commit details
    Browse the repository at this point in the history
  7. Rollup merge of rust-lang#99659 - compiler-errors:opaque-type-nit, r=…

    …oli-obk
    
    Use `VecMap::get` in `ConstraintLocator::check`
    
    Also rename the `def_id` param to `item_def_id` because that's easily confused with `self.def_id` (which is the opaque ty did).
    JohnTitor authored Jul 25, 2022
    Configuration menu
    Copy the full SHA
    cb51288 View commit details
    Browse the repository at this point in the history
  8. Rollup merge of rust-lang#99690 - RalfJung:miri-track-caller, r=Mark-…

    …Simulacrum
    
    add miri-track-caller to more intrinsic-exposing methods
    
    Follow-up to rust-lang#98674: I went through the Miri test suite to find more functions that would benefit from Miri backtrace pruning, and this is what I found.
    
    Basically anything that just exposes a potentially-UB intrinsic to the user should get this treatment.
    JohnTitor authored Jul 25, 2022
    Configuration menu
    Copy the full SHA
    d1e4342 View commit details
    Browse the repository at this point in the history