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 10 pull requests #122031

Closed
wants to merge 28 commits into from

Commits on Feb 19, 2024

  1. Implement MaybeUninit::fill{,_with,_from}

    ACP: rust-lang/libs-team#156
    
    Signed-off-by: Andrew Wock <[email protected]>
    ajwock committed Feb 19, 2024
    Configuration menu
    Copy the full SHA
    313eb8f View commit details
    Browse the repository at this point in the history

Commits on Feb 22, 2024

  1. Configuration menu
    Copy the full SHA
    3908a93 View commit details
    Browse the repository at this point in the history
  2. Fix llvm hang

    coolreader18 committed Feb 22, 2024
    Configuration menu
    Copy the full SHA
    861c7e7 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    658a0a2 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    125b26a View commit details
    Browse the repository at this point in the history

Commits on Feb 26, 2024

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

Commits on Feb 27, 2024

  1. Configuration menu
    Copy the full SHA
    a5245ef View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    a0ca9b1 View commit details
    Browse the repository at this point in the history
  3. Adjust wording

    jieyouxu committed Feb 27, 2024
    Configuration menu
    Copy the full SHA
    9c963fc View commit details
    Browse the repository at this point in the history

Commits on Mar 4, 2024

  1. Removing absolute path in proc-macro

    With rust 1.75 the absolute build path is embedding into '.rustc' section and which causes reproducibility issues. Detailed issue is here.
    rust-lang#120825 (comment)
    
    With this change the 'absolute path' changed back to '/rust/$hash' format.
    sundeep-kokkonda authored Mar 4, 2024
    Configuration menu
    Copy the full SHA
    a9a9798 View commit details
    Browse the repository at this point in the history
  2. add test for rust-lang#78894

    surechen committed Mar 4, 2024
    Configuration menu
    Copy the full SHA
    6e9f59f View commit details
    Browse the repository at this point in the history
  3. hir_analysis: enums return None in find_field

    Unnamed union fields with enums are checked for, but if `find_field`
    causes an ICE then the compiler won't get to that point.
    
    Signed-off-by: David Wood <[email protected]>
    davidtwco committed Mar 4, 2024
    Configuration menu
    Copy the full SHA
    4e03c51 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    640e99c View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    5e6e140 View commit details
    Browse the repository at this point in the history

Commits on Mar 5, 2024

  1. add test for rust-lang#71450

    surechen committed Mar 5, 2024
    Configuration menu
    Copy the full SHA
    523ab25 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    960dd38 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    f391c07 View commit details
    Browse the repository at this point in the history
  4. Merge impl_trait_in_assoc_types_defined_by query back into `opaque_…

    …types_defined_by`
    
    Instead, when we're collecting opaques for associated items, we choose the right collection mode depending on whether we're collecting for an associated item of a trait impl or not.
    oli-obk committed Mar 5, 2024
    Configuration menu
    Copy the full SHA
    da35734 View commit details
    Browse the repository at this point in the history
  5. Rollup merge of rust-lang#121280 - ajwock:maybeuninit_fill, r=Amanieu

    Implement MaybeUninit::fill{,_with,_from}
    
    ACP: rust-lang/libs-team#156
    matthiaskrgr authored Mar 5, 2024
    Configuration menu
    Copy the full SHA
    955a160 View commit details
    Browse the repository at this point in the history
  6. Rollup merge of rust-lang#121438 - coolreader18:wasm32-panic-unwind, …

    …r=cuviper
    
    std support for wasm32 panic=unwind
    
    Tracking issue: rust-lang#118168
    
    This adds std support for `-Cpanic=unwind` on wasm, and with it slightly more fleshed out rustc support. Now, the stable default is still panic=abort without exception-handling, but if you `-Zbuild-std` with `RUSTFLAGS=-Cpanic=unwind`, you get wasm exception-handling try/catch blocks in the binary:
    
    ```rust
    #[no_mangle]
    pub fn foo_bar(x: bool) -> *mut u8 {
        let s = Box::<str>::from("hello");
        maybe_panic(x);
        Box::into_raw(s).cast()
    }
    
    #[inline(never)]
    #[no_mangle]
    fn maybe_panic(x: bool) {
        if x {
            panic!("AAAAA");
        }
    }
    ```
    ```wat
    ;; snip...
    (try $label$5
     (do
      (call $maybe_panic
       (local.get $0)
      )
      (br $label$1)
     )
     (catch_all
      (global.set $__stack_pointer
       (local.get $1)
      )
      (call $__rust_dealloc
       (local.get $2)
       (i32.const 5)
       (i32.const 1)
      )
      (rethrow $label$5)
     )
    )
    ;; snip...
    ```
    matthiaskrgr authored Mar 5, 2024
    Configuration menu
    Copy the full SHA
    73ab3c7 View commit details
    Browse the repository at this point in the history
  7. Rollup merge of rust-lang#121658 - jieyouxu:ice-outdated-nightly, r=o…

    …li-obk
    
    Hint user to update nightly on ICEs produced from outdated nightly
    
    This is a conservative best-effort approach to detect a potentially outdated nightly; it will fallback to the regular ICE-reporting if any of the following cases are true:
    - Channel is not nightly
    - Version information is not available
    - Version date is not parseable as a YYYY-MM-DD or is missing
    - System time is at least 36 hours ahead of the user's nightly release datetime.
    - Any internal features are used.
    
    Note that I'm not sure how to make a test for this: I tested this manually by `CFG_VER_DATE="2020-02-02" ./x build library --stage 1`, and also changing the channel detection in `rustc_driver_impl` from `Some("nightly")` to `Some("nightly" | "dev")`, and then running `rustc +stage1 test.rs -Ztreat-err-as-bug=1` with a non-existent `test.rs`.
    
    <img width="1145" alt="Screenshot 2024-02-27 at 01 12 28" src="https://github.com/rust-lang/rust/assets/39484203/eff6af2e-4b19-4a70-af57-cd739ecf0e84">
    
    Closes rust-lang#118832.
    matthiaskrgr authored Mar 5, 2024
    Configuration menu
    Copy the full SHA
    e788f15 View commit details
    Browse the repository at this point in the history
  8. Rollup merge of rust-lang#121959 - sundeep-kokkonda:patch-2, r=davidtwco

    Removing absolute path in proc-macro
    
    With rust 1.75 the absolute build path name is embedding into proc-macro (.rustc section) and which causes reproducibility issues.
    Detailed issue description is here - rust-lang#120825 (comment)
    
    With this change the 'absolute path' changed back to '/rust/$hash' format as in earlier revisions.
    matthiaskrgr authored Mar 5, 2024
    Configuration menu
    Copy the full SHA
    5b4f049 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    8676983 View commit details
    Browse the repository at this point in the history
  10. Rollup merge of rust-lang#121975 - davidtwco:issue-121757, r=petroche…

    …nkov
    
    hir_analysis: enums return `None` in `find_field`
    
    Fixes rust-lang#121757.
    
    Unnamed union fields with enums are checked for, but if `find_field` causes an ICE then the compiler won't get to that point.
    matthiaskrgr authored Mar 5, 2024
    Configuration menu
    Copy the full SHA
    b7a60d8 View commit details
    Browse the repository at this point in the history
  11. Rollup merge of rust-lang#121978 - GuillaumeGomez:dylib-duplicated-pa…

    …th, r=bjorn3
    
    Fix duplicated path in the "not found dylib" error
    
    While working on the gcc backend, I couldn't figure out why I had this error:
    
    ```
    error: couldn't load codegen backend /checkout/compiler/rustc_codegen_gcc/target/release/librustc_codegen_gcc.so/checkout/compiler/rustc_codegen_gcc/target/release/librustc_codegen_gcc.so: cannot open shared object file: No such file or directory
    ```
    
    As you can see, the path is duplicated for some reason. After investigating a bit more, I realized that `libloading::Error::LoadLibraryExW` starts with the path of the not found dylib, making it appear twice in our error afterward (because we do render it like this: `{path}{err}`, and since the `err` starts with the path...).
    
    Thanks to ```@bjorn3``` for linking me to rust-lang#121392. :)
    matthiaskrgr authored Mar 5, 2024
    Configuration menu
    Copy the full SHA
    d08dcea View commit details
    Browse the repository at this point in the history
  12. Rollup merge of rust-lang#121991 - oli-obk:merge_opaque_types_defined…

    …_by_queries, r=compiler-errors
    
    Merge impl_trait_in_assoc_types_defined_by query back into `opaque_types_defined_by`
    
    Instead, when we're collecting opaques for associated items, we choose the right collection mode depending on whether we're collecting for an associated item of a trait impl or not.
    
    r? `@compiler-errors`
    
    follow up to rust-lang#121838
    matthiaskrgr authored Mar 5, 2024
    Configuration menu
    Copy the full SHA
    9e3f983 View commit details
    Browse the repository at this point in the history
  13. Rollup merge of rust-lang#122016 - RalfJung:will_wake, r=dtolnay

    will_wake tests fail on Miri and that is expected
    
    Follow-up to rust-lang#121622
    r? `@cuviper` `@dtolnay`
    matthiaskrgr authored Mar 5, 2024
    Configuration menu
    Copy the full SHA
    62aed06 View commit details
    Browse the repository at this point in the history
  14. Rollup merge of rust-lang#122018 - RalfJung:box-custom-alloc, r=oli-obk

    only set noalias on Box with the global allocator
    
    As discovered in rust-lang/miri#3341, `noalias` and custom allocators don't go well together.
    
    rustc can now check whether a Box uses the global allocator. This replaces the previous ad-hoc and rather unprincipled check for a zero-sized allocator.
    
    This is the rustc part of fixing that; Miri will also need a patch.
    matthiaskrgr authored Mar 5, 2024
    Configuration menu
    Copy the full SHA
    8834019 View commit details
    Browse the repository at this point in the history