-
Notifications
You must be signed in to change notification settings - Fork 12.8k
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 #130807
Rollup of 7 pull requests #130807
Commits on Sep 23, 2024
-
Improve assembly test for CMSE ABIs
This ensures the code-gen for these ABIs does not change silently. Co-authored-by: Folkert <folkert@folkertdev.nl>
Configuration menu - View commit details
-
Copy full SHA for 3d168c2 - Browse repository at this point
Copy the full SHA 3d168c2View commit details
Commits on Sep 24, 2024
-
Configuration menu - View commit details
-
Copy full SHA for cfb8419 - Browse repository at this point
Copy the full SHA cfb8419View commit details -
Configuration menu - View commit details
-
Copy full SHA for 28f6980 - Browse repository at this point
Copy the full SHA 28f6980View commit details -
Pin memchr to 2.5.0 in the library rather than rustc_ast
The latest versions of `memchr` experience LTO-related issues when compiling for windows-gnu [1], so needs to be pinned. The issue is present in the standard library. `memchr` has been pinned in `rustc_ast`, but since the workspace was recently split, this pin no longer has any effect on library crates. Resolve this by adding `memchr` as an _unused_ dependency in `std`, pinned to 2.5. Additionally, remove the pin in `rustc_ast` to allow non-library crates to upgrade to the latest version. Link: rust-lang#127890 [1]
Configuration menu - View commit details
-
Copy full SHA for e95d15a - Browse repository at this point
Copy the full SHA e95d15aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 50729fe - Browse repository at this point
Copy the full SHA 50729feView commit details -
add InProgress ErrorKind gated behind io_error_inprogress feature
Co-authored-by: David Tolnay <dtolnay@gmail.com> Co-authored-by: nora <48135649+Noratrieb@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 46fd76e - Browse repository at this point
Copy the full SHA 46fd76eView commit details -
rustdoc: inherit parent's stability where applicable
Lukas Markeffsky committedSep 24, 2024 Configuration menu - View commit details
-
Copy full SHA for 2fdeb3b - Browse repository at this point
Copy the full SHA 2fdeb3bView commit details -
unify dyn* coercions with other pointer coercions
Lukas Markeffsky committedSep 24, 2024 Configuration menu - View commit details
-
Copy full SHA for 46ecb23 - Browse repository at this point
Copy the full SHA 46ecb23View commit details -
Lukas Markeffsky committed
Sep 24, 2024 Configuration menu - View commit details
-
Copy full SHA for b52dea8 - Browse repository at this point
Copy the full SHA b52dea8View commit details -
use more accurate spans for user type ascriptions
Lukas Markeffsky committedSep 24, 2024 Configuration menu - View commit details
-
Copy full SHA for d1e82d4 - Browse repository at this point
Copy the full SHA d1e82d4View commit details -
replace "cast" with "coercion" where applicable
This changes the remaining span for the cast, because the new `Cast` category has a higher priority (lower `Ord`) than the old `Coercion` category, so we no longer report the region error for the "unsizing" coercion from `*const Trait` to itself.
Lukas Markeffsky committedSep 24, 2024 Configuration menu - View commit details
-
Copy full SHA for 5e60d1f - Browse repository at this point
Copy the full SHA 5e60d1fView commit details -
be even more precise about "cast" vs "coercion"
Lukas Markeffsky committedSep 24, 2024 Configuration menu - View commit details
-
Copy full SHA for bd31e3e - Browse repository at this point
Copy the full SHA bd31e3eView commit details -
improve errors for invalid pointer casts
Lukas Markeffsky committedSep 24, 2024 Configuration menu - View commit details
-
Copy full SHA for 39f66ba - Browse repository at this point
Copy the full SHA 39f66baView commit details -
Lukas Markeffsky committed
Sep 24, 2024 Configuration menu - View commit details
-
Copy full SHA for b62e72c - Browse repository at this point
Copy the full SHA b62e72cView commit details -
Rollup merge of rust-lang#130234 - lukas-code:ptr-cast-errors, r=Waff…
…leLapkin improve compile errors for invalid ptr-to-ptr casts with trait objects This is a follow-up to rust-lang#120248 to improve some of its error messages. 1. Make the borrowcheck error for "type annotation requires that x must outlive y" actually point at the type annotation, i.e. the type `T` in a `x as T` cast. This makes the error more consistent with other errors caused by type annotation in other places, such as ```text error: lifetime may not live long enough --> src/lib.rs:4:12 | 3 | fn bar(a: &i32) { | - let's call the lifetime of this reference `'1` 4 | let b: &'static i32 = a; | ^^^^^^^^^^^^ type annotation requires that `'1` must outlive `'static` ``` 2. Don't say "cast" when we actually mean "coercion" and give borrowcheck errors from actual casts (which is currently just the check added in rust-lang#120248) a higher priority than ones from coercions. This can improve the errors for ptr-to-ptr cast between trait objects because they are are lowered as an upcast "unsizing" coercion if possible (which may be the identity upcast) followed by the actual cast. 3. Bring back the old "casting X as Y is invalid" message for type mismatch in the principals and reword the "vtable kinds may not match" message to more accurately describe the pointer metadata and not refer to "vtables" if the metadata is unknown. fixes rust-lang#130030 r? `@WaffleLapkin` but feel free to reassign
Configuration menu - View commit details
-
Copy full SHA for 75296fc - Browse repository at this point
Copy the full SHA 75296fcView commit details -
Rollup merge of rust-lang#130752 - tdittr:cmse-assembly-tests, r=jiey…
…ouxu Improve assembly test for CMSE ABIs Tracking issues: rust-lang#75835 rust-lang#81391 This ensures the code-gen for these ABIs does not change silently. There is a small chance that this code-gen might change, however even GCC (https://godbolt.org/z/16arxab5x and https://godbolt.org/z/16arxab5x) generates almost the same assembly for these ABIs. I hope the notes in the comments should help fix the tests if it ever breaks.
Configuration menu - View commit details
-
Copy full SHA for 1f52c07 - Browse repository at this point
Copy the full SHA 1f52c07View commit details -
Rollup merge of rust-lang#130764 - compiler-errors:inherent, r=estebank
Separate collection of crate-local inherent impls from error tracking rust-lang#119895 changed the return type of the `crate_inherent_impls` query from `CrateInherentImpls` to `Result<CrateInherentImpls, ErrorGuaranteed>` to avoid needing to use the non-parallel-friendly `track_errors()` to track if an error was reporting from within the query... This was mostly fine until rust-lang#121113, which stopped halting compilation when we hit an `Err(ErrorGuaranteed)` in the `crate_inherent_impls` query. Thus we proceed onwards to typeck, and since a return type of `Result<CrateInherentImpls, ErrorGuaranteed>` means that the query can *either* return one of "the list inherent impls" or "error has been reported", later on when we want to assemble method or associated item candidates for inherent impls, we were just treating any `Err(ErrorGuaranteed)` return value as if Rust had no inherent impls defined anywhere at all! This leads to basically every inherent method call failing with an error, lol, which was reported in rust-lang#127798. This PR changes the `crate_inherent_impls` query to return `(CrateInherentImpls, Result<(), ErrorGuaranteed>)`, i.e. returning the inherent impls collected *and* whether an error was reported in the query itself. It firewalls the latter part of that query into a new `crate_inherent_impls_validity_check` just for the `ensure()` call. This fixes rust-lang#127798.
Configuration menu - View commit details
-
Copy full SHA for 3b45f8f - Browse repository at this point
Copy the full SHA 3b45f8fView commit details -
Rollup merge of rust-lang#130788 - tgross35:memchr-pinning, r=Noratri…
…eb,Mark-Simulacrum Pin memchr to 2.5.0 in the library rather than rustc_ast The latest versions of `memchr` experience LTO-related issues when compiling for windows-gnu [1], so needs to be pinned. The issue is present in the standard library. `memchr` has been pinned in `rustc_ast`, but since the workspace was recently split, this pin no longer has any effect on library crates. Resolve this by adding `memchr` as an _unused_ dependency in `std`, pinned to 2.5. Additionally, remove the pin in `rustc_ast` to allow non-library crates to upgrade to the latest version. Link: rust-lang#127890 [1] try-job: x86_64-mingw try-job: x86_64-msvc
Configuration menu - View commit details
-
Copy full SHA for 9bdef3c - Browse repository at this point
Copy the full SHA 9bdef3cView commit details -
Rollup merge of rust-lang#130789 - aviramha:add_inprogress, r=Noratrieb
add InProgress ErrorKind gated behind io_error_inprogress feature Follow up on rust-lang/libs-team#92 (comment)
Configuration menu - View commit details
-
Copy full SHA for 147aa86 - Browse repository at this point
Copy the full SHA 147aa86View commit details -
Rollup merge of rust-lang#130793 - jieyouxu:mention-crashes-verbose, …
…r=matthiaskrgr Mention `COMPILETEST_VERBOSE_CRASHES` on crash test failure Fixes rust-lang#130776. r? `@matthiaskrgr` (or compiler/bootstrap)
Configuration menu - View commit details
-
Copy full SHA for 7de1082 - Browse repository at this point
Copy the full SHA 7de1082View commit details -
Rollup merge of rust-lang#130798 - lukas-code:doc-stab, r=notriddle
rustdoc: inherit parent's stability where applicable It is currently not possible for a re-export to have a different stability (rust-lang#30827). Therefore the standard library uses a hack when moving items like `std::error::Error` or `std::net::IpAddr` into `core` by marking the containing module (`core::error` / `core::net`) as unstable or stable in a later version than the items the module contains. Previously, rustdoc would always show the *stability as declared* for an item rather than the *stability as publicly reachable* (i.e. the features required to actually access the item), which could be confusing when viewing the docs. This PR changes it so that we show the stability of the first unstable parent or the most recently stabilized parent instead, to hopefully make things less confusing. fixes rust-lang#130765 screenshots: ![error in std](https://github.com/user-attachments/assets/2ab9bdb9-ed81-4e45-a832-ac7d3ba1be3f) ![error in core](https://github.com/user-attachments/assets/46f46182-5642-4ac5-b92e-0b99a8e2496d)
Configuration menu - View commit details
-
Copy full SHA for 9737f92 - Browse repository at this point
Copy the full SHA 9737f92View commit details