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 5 pull requests #125415

Merged
merged 17 commits into from
May 22, 2024
Merged

Rollup of 5 pull requests #125415

merged 17 commits into from
May 22, 2024

Commits on May 8, 2024

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

Commits on May 11, 2024

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

Commits on May 12, 2024

  1. Configuration menu
    Copy the full SHA
    f493143 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    75a34ca View commit details
    Browse the repository at this point in the history

Commits on May 13, 2024

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

Commits on May 18, 2024

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

Commits on May 21, 2024

  1. Configuration menu
    Copy the full SHA
    63fe640 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    0734ae2 View commit details
    Browse the repository at this point in the history
  3. Update check-cfg lists for std

    tesuji committed May 21, 2024
    Configuration menu
    Copy the full SHA
    73602bf View commit details
    Browse the repository at this point in the history
  4. addresss reviews

    tesuji committed May 21, 2024
    Configuration menu
    Copy the full SHA
    c7d2f45 View commit details
    Browse the repository at this point in the history
  5. tidy alphabetica

    tesuji committed May 21, 2024
    Configuration menu
    Copy the full SHA
    df3a320 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    30e0ab8 View commit details
    Browse the repository at this point in the history

Commits on May 22, 2024

  1. Rollup merge of rust-lang#124896 - RalfJung:miri-intrinsic-fallback, …

    …r=oli-obk
    
    miri: rename intrinsic_fallback_checks_ub to intrinsic_fallback_is_spec
    
    Checking UB is not the only concern, we also have to make sure we are not losing out on non-determinism.
    
    r? ``@oli-obk`` (not urgent, take your time)
    fmease authored May 22, 2024
    Configuration menu
    Copy the full SHA
    76d4bfb View commit details
    Browse the repository at this point in the history
  2. Rollup merge of rust-lang#125015 - fmease:pat-tys-proh-gen-args-on-ct…

    …-params, r=spastorino
    
    Pattern types: Prohibit generic args on const params
    
    Addresses https://github.com/rust-lang/rust/pull/123689/files#r1562676629.
    
    NB: Technically speaking, *not* prohibiting generics args on const params is not a bug as `pattern_types` is an *internal* feature and as such any uncaught misuses of it are considered to be the fault of the user. However, permitting this makes me slightly uncomfortable esp. since we might want to make pattern types available to the public at some point and I don't want this oversight to be able to slip into the language (for comparison, ICEs triggered by the use of internal features are like super fine).
    
    Furthermore, this is an ad hoc fix. A more general fix would be changing the representation of the pattern part of pattern types in such a way that it can reuse preexisting lowering routines for exprs / anon consts. See also this [Zulip discussion](https://rust-lang.zulipchat.com/#narrow/stream/131828-t-compiler/topic/pattern.20type.20HIR.20nodes/near/432410768) and rust-lang#124650.
    
    Also note that we currently don't properly typeck the pattern of pat tys. This however is out of scope for this PR.
    
    cc ``@oli-obk``
    r? ``@spastorino`` as discussed
    fmease authored May 22, 2024
    Configuration menu
    Copy the full SHA
    b3604de View commit details
    Browse the repository at this point in the history
  3. Rollup merge of rust-lang#125049 - dtolnay:castbrace, r=compiler-errors

    Disallow cast with trailing braced macro in let-else
    
    This fixes an edge case I noticed while porting rust-lang#118880 and rust-lang#119062 to syn.
    
    Previously, rustc incorrectly accepted code such as:
    
    ```rust
    let foo = &std::ptr::null as &'static dyn std::ops::Fn() -> *const primitive! {
        8
    } else {
        return;
    };
    ```
    
    even though a right curl brace `}` directly before `else` in a `let...else` statement is not supposed to be valid syntax.
    fmease authored May 22, 2024
    Configuration menu
    Copy the full SHA
    5b485f0 View commit details
    Browse the repository at this point in the history
  4. Rollup merge of rust-lang#125259 - compiler-errors:fn-mut-as-a-treat,…

    … r=oli-obk
    
    An async closure may implement `FnMut`/`Fn` if it has no self-borrows
    
    There's no reason that async closures may not implement `FnMut` or `Fn` if they don't actually borrow anything with the closure's env lifetime. Specifically, rust-lang#123660 made it so that we don't always need to borrow captures from the closure's env.
    
    See the doc comment on `should_reborrow_from_env_of_parent_coroutine_closure`:
    
    https://github.com/rust-lang/rust/blob/c00957a3e269219413041a4e3565f33b1f9d0779/compiler/rustc_hir_typeck/src/upvar.rs#L1777-L1823
    
    If there are no such borrows, then we are free to implement `FnMut` and `Fn` as permitted by our closure's inferred `ClosureKind`.
    
    As far as I can tell, this change makes `async || {}` work in precisely the set of places they used to work before rust-lang#120361.
    Fixes rust-lang#125247.
    
    r? oli-obk
    fmease authored May 22, 2024
    Configuration menu
    Copy the full SHA
    44c7a2d View commit details
    Browse the repository at this point in the history
  5. Rollup merge of rust-lang#125296 - tesuji:checkcfg-buildstd, r=Nilstr…

    …ieb,michaelwoerister
    
    Fix `unexpected_cfgs` lint on std
    
    closes rust-lang#125291
    
    r? rust-lang/compiler
    fmease authored May 22, 2024
    Configuration menu
    Copy the full SHA
    8219fd2 View commit details
    Browse the repository at this point in the history