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 6 pull requests #128608

Closed
wants to merge 16 commits into from
Closed

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 1, 2024

  1. Configuration menu
    Copy the full SHA
    b485dd1 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    94da7b1 View commit details
    Browse the repository at this point in the history
  3. Update stdarch

    sayantn committed Aug 1, 2024
    Configuration menu
    Copy the full SHA
    f373ff3 View commit details
    Browse the repository at this point in the history
  4. Delete issue-120720-reduce-nan.rs

    This file tests for UB in `reduce_add`, but those are reimplemented by explicitly using the associativity specified by Intel
    sayantn committed Aug 1, 2024
    Configuration menu
    Copy the full SHA
    e3b9851 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

Commits on Aug 3, 2024

  1. 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
  2. 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
  3. Configuration menu
    Copy the full SHA
    b564b70 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    eb45146 View commit details
    Browse the repository at this point in the history
  5. Rollup merge of rust-lang#127095 - Oneirical:testiary-education, r=ji…

    …eyouxu
    
    Migrate `reproducible-build-2` and `stable-symbol-names` `run-make` tests to rmake
    
    Part of rust-lang#121876 and the associated [Google Summer of Code project](https://blog.rust-lang.org/2024/05/01/gsoc-2024-selected-projects.html).
    
    Needs try-jobs.
    
    try-job: x86_64-msvc
    try-job: armhf-gnu
    try-job: test-various
    try-job: aarch64-apple
    try-job: i686-msvc
    try-job: x86_64-mingw
    tgross35 authored Aug 3, 2024
    Configuration menu
    Copy the full SHA
    ac06548 View commit details
    Browse the repository at this point in the history
  6. 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.
    tgross35 authored Aug 3, 2024
    Configuration menu
    Copy the full SHA
    16e6cd2 View commit details
    Browse the repository at this point in the history
  7. Rollup merge of rust-lang#128466 - sayantn:stdarch-update, r=tgross35

    Update the stdarch submodule
    
    cc `@tgross35` `@Amanieu`
    r? `@tgross35`
    
    try-job: x86_64-rust-for-linux
    try-job: test-various
    try-job: dist-x86_64-linux
    tgross35 authored Aug 3, 2024
    Configuration menu
    Copy the full SHA
    3bd24f4 View commit details
    Browse the repository at this point in the history
  8. 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>.
    tgross35 authored Aug 3, 2024
    Configuration menu
    Copy the full SHA
    a8e58c3 View commit details
    Browse the repository at this point in the history
  9. 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)
    tgross35 authored Aug 3, 2024
    Configuration menu
    Copy the full SHA
    6b3160e View commit details
    Browse the repository at this point in the history
  10. 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.
    tgross35 authored Aug 3, 2024
    Configuration menu
    Copy the full SHA
    74cc27f View commit details
    Browse the repository at this point in the history