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 #128614

Merged
merged 16 commits into from
Aug 3, 2024
Merged

Rollup of 7 pull requests #128614

merged 16 commits into from
Aug 3, 2024

Commits on Jul 23, 2024

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

Commits on Aug 2, 2024

  1. Configuration menu
    Copy the full SHA
    77ca30f View commit details
    Browse the repository at this point in the history
  2. bootstrap: fix bug preventing the use of custom targets

    the bug was caused by two factors:
    1. only checking the RUST_TARGET_PATH form, not the full filepath form
    2. indirectly trying to use the Debug presentation to get the file path
    lolbinarycat committed Aug 2, 2024
    Configuration menu
    Copy the full SHA
    6264d2e View commit details
    Browse the repository at this point in the history

Commits on Aug 3, 2024

  1. Configuration menu
    Copy the full SHA
    a798e0f View commit details
    Browse the repository at this point in the history
  2. Assert that all attributes are actually checked via `CheckAttrVisitor…

    …` and aren't accidentally usable on completely unrelated HIR nodes
    
    Co-authored-by: Jieyou Xu <jieyouxu@outlook.com>
    oli-obk and jieyouxu committed Aug 3, 2024
    Configuration menu
    Copy the full SHA
    ed010dd View commit details
    Browse the repository at this point in the history
  3. Add test for coroutine attribute

    oli-obk authored and jieyouxu committed Aug 3, 2024
    Configuration menu
    Copy the full SHA
    33cb334 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    b564b70 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    eb45146 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    a3a09b4 View commit details
    Browse the repository at this point in the history
  7. Rollup merge of rust-lang#127921 - spastorino:stabilize-unsafe-extern…

    …-blocks, r=compiler-errors
    
    Stabilize unsafe extern blocks (RFC 3484)
    
    # Stabilization report
    
    ## Summary
    
    This is a tracking issue for the RFC 3484: Unsafe Extern Blocks
    
    We are stabilizing `#![feature(unsafe_extern_blocks)]`, as described in [Unsafe Extern Blocks RFC 3484](rust-lang/rfcs#3484). This feature makes explicit that declaring an extern block is unsafe. Starting in Rust 2024, all extern blocks must be marked as unsafe. In all editions, items within unsafe extern blocks may be marked as safe to use.
    
    RFC: rust-lang/rfcs#3484
    Tracking issue: rust-lang#123743
    
    ## What is stabilized
    
    ### Summary of stabilization
    
    We now need extern blocks to be marked as unsafe and items inside can also have safety modifiers (unsafe or safe), by default items with no modifiers are unsafe to offer easy migration without surprising results.
    
    ```rust
    unsafe extern {
        // sqrt (from libm) may be called with any `f64`
        pub safe fn sqrt(x: f64) -> f64;
    
        // strlen (from libc) requires a valid pointer,
        // so we mark it as being an unsafe fn
        pub unsafe fn strlen(p: *const c_char) -> usize;
    
        // this function doesn't say safe or unsafe, so it defaults to unsafe
        pub fn free(p: *mut core::ffi::c_void);
    
        pub safe static IMPORTANT_BYTES: [u8; 256];
    
        pub safe static LINES: SyncUnsafeCell<i32>;
    }
    ```
    
    ## Tests
    
    The relevant tests are in `tests/ui/rust-2024/unsafe-extern-blocks`.
    
    ## History
    
    - rust-lang#124482
    - rust-lang#124455
    - rust-lang#125077
    - rust-lang#125522
    - rust-lang#126738
    - rust-lang#126749
    - rust-lang#126755
    - rust-lang#126757
    - rust-lang#126758
    - rust-lang#126756
    - rust-lang#126973
    - rust-lang#127535
    - rust-lang/rustfmt#6204
    
    ## Unresolved questions
    
    I am not aware of any unresolved questions.
    matthiaskrgr authored Aug 3, 2024
    Configuration menu
    Copy the full SHA
    7d9ed2a View commit details
    Browse the repository at this point in the history
  8. Rollup merge of rust-lang#128283 - lolbinarycat:bootstrap-custom-targ…

    …et, r=albertlarsan68
    
    bootstrap: fix bug preventing the use of custom targets
    
    the bug was caused by two factors:
    1. only checking the RUST_TARGET_PATH form, not the full filepath form
    2. indirectly trying to use the Debug presentation to get the file path
    matthiaskrgr authored Aug 3, 2024
    Configuration menu
    Copy the full SHA
    0afbe48 View commit details
    Browse the repository at this point in the history
  9. Rollup merge of rust-lang#128530 - scottmcm:repeat-n-unchecked, r=joboet

    Implement `UncheckedIterator` directly for `RepeatN`
    
    This just pulls the code out of `next` into `next_unchecked`, rather than making the `Some` and `unwrap_unchecked`ing it.
    
    And while I was touching it, I added a codegen test that `array::repeat` for something that's just `Clone`, not `Copy`, still ends up optimizing to the same thing as `[x; n]`: <https://rust.godbolt.org/z/YY3a5ajMW>.
    matthiaskrgr authored Aug 3, 2024
    Configuration menu
    Copy the full SHA
    53a5619 View commit details
    Browse the repository at this point in the history
  10. Rollup merge of rust-lang#128551 - Konippi:refactor-backtrace-style-i…

    …n-panic, r=tgross35
    
    chore: refactor backtrace style in panic
    
    # Refactor get_backtrace_style for better readability and potential performance improvements
    
    This PR aims to improve the readability and maintainability of the `set_backtrace_style` and `get_backtrace_style` function.
    matthiaskrgr authored Aug 3, 2024
    Configuration menu
    Copy the full SHA
    0613381 View commit details
    Browse the repository at this point in the history
  11. Rollup merge of rust-lang#128573 - GuillaumeGomez:simplify-body, r=no…

    …triddle
    
    Simplify `body` usage in rustdoc
    
    No changes, just a little less code.
    
    r? `@notriddle`
    matthiaskrgr authored Aug 3, 2024
    Configuration menu
    Copy the full SHA
    e488ee7 View commit details
    Browse the repository at this point in the history
  12. Rollup merge of rust-lang#128581 - jieyouxu:checked-attr, r=nnethercote

    Assert that all attributes are actually checked via `CheckAttrVisitor` and aren't accidentally usable on completely unrelated HIR nodes
    
    ``@oli-obk's`` rust-lang#128444 with unreachable case removed to avoid that PR bitrotting away.
    Based on rust-lang#128402.
    
    This PR will make adding a new attribute ICE on any use of that attribute unless it gets a handler added in `rustc_passes::CheckAttrVisitor`.
    
    r? ``@nnethercote`` (since you were the reviewer of the original PR)
    matthiaskrgr authored Aug 3, 2024
    Configuration menu
    Copy the full SHA
    3a9d432 View commit details
    Browse the repository at this point in the history
  13. Rollup merge of rust-lang#128603 - ChrisDenton:used, r=jieyouxu

    Update run-make/used to use `any_symbol_contains`
    
    This makes it so we don't need `nm` or `llvm-nm`.
    
    I also tested that `BAR` is removed. I'm not sure if this is wanted though.
    matthiaskrgr authored Aug 3, 2024
    Configuration menu
    Copy the full SHA
    0655ed2 View commit details
    Browse the repository at this point in the history