-
Notifications
You must be signed in to change notification settings - Fork 12.9k
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 9 pull requests #118049
Rollup of 9 pull requests #118049
Conversation
Signed-off-by: onur-ozkan <work@onurozkan.dev>
Take into account implicit dereferences when suggesting fields. ``` error[E0609]: no field `longname` on type `Arc<S>` --> $DIR/suggest-field-through-deref.rs:10:15 | LL | let _ = x.longname; | ^^^^^^^^ help: a field with a similar name exists: `long_name` ``` CC rust-lang#78374 (comment)
When encountering a `Result<T, _>` or `Option<T>` where `T` has a field that's being accessed, suggest calling `.unwrap()` to get to the field.
…negative coherence
…k-Simulacrum Add Seek::seek_relative The `BufReader` struct has a `seek_relative` method because its `Seek::seek` implementation involved dumping the internal buffer (rust-lang#31100). Unfortunately, there isn't really a good way to take advantage of that method in generic code. This PR adds the same method to the main `Seek` trait with the straightforward default method, and an override for `BufReader` that calls its implementation. _Also discussed in [this](https://internals.rust-lang.org/t/add-seek-seek-relative/19546) internals.rust-lang.org thread._
…=b-naber Suggest field typo through derefs Take into account implicit dereferences when suggesting fields. ``` error[E0609]: no field `longname` on type `Arc<S>` --> $DIR/suggest-field-through-deref.rs:10:15 | LL | let _ = x.longname; | ^^^^^^^^ help: a field with a similar name exists: `long_name` ``` CC rust-lang#78374 (comment)
…vm-option, r=Mark-Simulacrum deprecate `if-available` value of `download-ci-llvm` This PR deprecates the use of the `if-available` value for `download-ci-llvm` since `if-unchanged` serves the same purpose when no changes are detected. In cases where changes are present, it is assumed that compiling LLVM is acceptable (otherwise, why make changes there?). This was probably missing in the rust-lang#110087 issue before. cc `@RalfJung`
…-Simulacrum Set `CFG_OMIT_GIT_HASH=1` during builds when `omit-git-hash` is enabled This environment variable will allow tools like Cargo to disable their own detection when `omit-git-hash` is set to `true`. I created this PR because of rust-lang/cargo#12968. There is not a dependency between the two PRs, they can land in any order. They just won't do anything until both of them are merged into the repo.
…ark-Simulacrum Adjust frame IP in backtraces relative to image base for SGX target This is followup to rust-lang/backtrace-rs#566. The backtraces printed by `panic!` or generated by `std::backtrace::Backtrace` in SGX target are not usable. The frame addresses need to be relative to image base address so they can be used for symbol resolution. Here's an example panic backtrace generated before this change: ``` $ cargo r --target x86_64-fortanix-unknown-sgx ... stack backtrace: 0: 0x7f8fe401d3a5 - <unknown> 1: 0x7f8fe4034780 - <unknown> 2: 0x7f8fe401c5a3 - <unknown> 3: 0x7f8fe401d1f5 - <unknown> 4: 0x7f8fe401e6f6 - <unknown> ``` Here's the same panic after this change: ``` $ cargo +stage1 r --target x86_64-fortanix-unknown-sgx stack backtrace: 0: 0x198bf - <unknown> 1: 0x3d181 - <unknown> 2: 0x26164 - <unknown> 3: 0x19705 - <unknown> 4: 0x1ef36 - <unknown> ``` cc `@jethrogb` and `@workingjubilee`
Add `x suggest` entries for testing `mir-opt` and `coverage` The `x suggest` subcommand uses git to find paths that have been modified, and uses those paths to suggest relevant test suites to run. This PR adds suggestions for `x test mir-opt` and `x test coverage` .
…lete, r=lcnr Don't require intercrate mode for negative coherence Negative coherence needs to be *sound*, but does not need to be *complete*, since it's looking for the *existence* of a negative goal, not the non-existence of a positive goal. This removes some trivial and annoying ambiguities when a negative impl has region constraints. r? lcnr idk if this needs an fcp but if it does, pls kick it off
…-in-coherence, r=lcnr Ignore but do not assume region obligations from unifying headers in negative coherence Partly addresses a FIXME that was added in rust-lang#112875. Just as we can throw away the nested trait/projection obligations from unifying two impl headers, we can also just throw away the region obligations too. I removed part of the FIXME that was incorrect, namely: > Given that the only region constraints we get are involving inference regions in the root, it shouldn't matter, but still sus. This is not true when unifying `fn(A)` and `for<'b> fn(&'b B)` which ends up with placeholder region outlives from non-root universes. I'm pretty sure this is okay, though it would be nice if we were to use them as assumptions. See the `explicit` revision of the test I committed, which still fails. Fixes rust-lang#117986 r? lcnr, feel free to reassign tho.
Fix links to `From<{OwnedHandle, OwnedFd}> for std::process::Child{Stdin, Stdout, Stderr}` in 1.74 release notes
@bors r+ rollup=never p=9 Opening a larger rollup since the one that's currently open is really small for some reason. |
Nevermind, there are conflicting PRs. |
Guess you will find the reason in around 30 minutes 🙃 #118041 (comment) EDIT or earlier :D |
If that rollup failure had been triaged properly then maybe I would've known >5 minutes ago 😿 |
:) it's not always that easy especially when theres weird interaction between prs |
The job Click to see the possible cause of the failure (guessed by this bot)
|
Successful merges:
if-available
value ofdownload-ci-llvm
#117813 (deprecateif-available
value ofdownload-ci-llvm
)CFG_OMIT_GIT_HASH=1
during builds whenomit-git-hash
is enabled #117868 (SetCFG_OMIT_GIT_HASH=1
during builds whenomit-git-hash
is enabled)x suggest
entries for testingmir-opt
andcoverage
#117961 (Addx suggest
entries for testingmir-opt
andcoverage
)From<{OwnedHandle, OwnedFd}> for std::process::Child{Stdin, Stdout, Stderr}
in 1.74 release notes #118020 (Fix links toFrom<{OwnedHandle, OwnedFd}> for std::process::Child{Stdin, Stdout, Stderr}
in 1.74 release notes)r? @ghost
@rustbot modify labels: rollup
Create a similar rollup