-
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
Nightly ICEs trying to normalize during a cast #73747
Comments
Let’s try to find an MCVE. I’d also like to find the culprit PR, which shouldn’t take too long since we know in which nightly this regressed. @rustbot ping cleanup |
Hey Cleanup Crew ICE-breakers! This bug has been identified as a good cc @AminArria @camelid @chrissimpkins @contrun @DutchGhost @elshize @ethanboxx @h-michael @HallerPatrick @hdhoang @hellow554 @imtsuki @kanru @KarlK90 @LeSeulArtichaut @MAdrianMattocks @matheus-consoli @mental32 @nmccarty @Noah-Kennedy @pard68 @PeytonT @pierreN @Redblueflame @RobbieClarken @RobertoSnap @robjtede @SarthakSingh31 @senden9 @shekohex @sinato @spastorino @turboladen @woshilapin @yerke |
Just tried this out locally as well and can confirm the ICE happens.. time to dig in .. |
@rustbot ping windows |
Hey Windows Group! This bug has been identified as a good "Windows candidate". cc @arlosi @danielframpton @gdr-at-ms @kennykerr @luqmana @lzybkr @retep998 @rylev @sivadeilra @spastorino |
Similar ICE unsafe {
ptr::swap(
ts.gc_arenas_full as *mut _ as *mut HashSet<*mut u8>,
&mut ts.condemned_arenas,
)
} The correct error from
|
Prioritized this one as |
This ICE went away between nightly-2020-06-28 and nightly-2020-06-29. Bisecting further now. |
searched nightlies: from nightly-2020-06-28 to nightly-2020-06-29 bisected with cargo-bisect-rustc v0.5.2Host triple: x86_64-pc-windows-msvc cargo bisect-rustc success --start 2020-06-28 --end 2020-06-29 --access github --preserve |
Minified, #[repr(transparent)]
struct NonNullRawComPtr<T: ComInterface> {
inner: std::ptr::NonNull<<T as ComInterface>::VTable>,
}
trait ComInterface {
type VTable;
}
extern "C" fn invoke<T: ComInterface>(_: Option<NonNullRawComPtr<T>>) {} With the message,
|
@connorskees 's MCVE shows that this problem is not windows-specific. Updating labels accordingly. |
Also, it looks to me like this MCVE still reproduces on the current nightly. (So something must have been off with my earlier bisection that claimed it was fixed. The original problem has been tricky for me to consistently reproduce.) |
On the plus side, I was able to run cargo-bisect-rustc on @connorskees 's MCVE (to identify the point where it regressed), and got this result: searched nightlies: from nightly-2020-06-22 to nightly-2020-07-14 bisected with cargo-bisect-rustc v0.5.2Host triple: x86_64-unknown-linux-gnu cargo bisect-rustc |
Culprit is likely #72700? cc @davidtwco |
Keeping at P-critical based on conversation at: https://zulip-archive.rust-lang.org/245100tcompilerwgprioritizationalerts/57076Iprioritize73747NightlyICEstryingtonormalizeduring.html#203858906 |
reopening; the next beta was cut before this landed in master, so this ended up being a regression-from-stable-to-beta |
however, I also think the bug is under control now that the PR has landed on nightly. Reprioritizing as P-high. |
The fix was backported, closing. |
On the latest nightly (2020-06-25), a small usage of the WinRT crate causes an ICE when trying to compile even a small example. I confirmed that the past week of nightly releases compile fine before the latest. On the latest stable (1.44.1) this compiles just fine as expected.
Code
Cargo.toml:
Meta
rustc --version --verbose
:Error output
Backtrace
The text was updated successfully, but these errors were encountered: