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

Fix ICE during type layout when there's a [type error] #84262

Merged
merged 1 commit into from
Jun 7, 2021

Conversation

camelid
Copy link
Member

@camelid camelid commented Apr 16, 2021

Fixes #84108.

Based on estebank's comment, except I used delay_span_bug because it
should work in more cases, and I think it expresses its intent more
clearly.

r? @estebank

Based on estebank's [comment], except I used `delay_span_bug` because it
should work in more cases, and I think it expresses its intent more
clearly.

[comment]: rust-lang#84108 (comment)
@camelid camelid added the A-layout Area: Memory layout of types label Apr 16, 2021
@rust-highfive rust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Apr 16, 2021
@JohnCSimon JohnCSimon added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels May 4, 2021
@bstrie bstrie added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels May 19, 2021
@camsteffen
Copy link
Contributor

I think a simpler fix is to add if ty.references_error() { return; } here. The same thing is done in the function below.

@estebank
Copy link
Contributor

estebank commented Jun 5, 2021

@bors r+

@camsteffen it's true that checking for errors and returning is valid, I prefer us not to be shy about adding delay_span_bugs to avoid any risk of potential miscompilations.

@bors
Copy link
Contributor

bors commented Jun 5, 2021

📌 Commit c30eac5 has been approved by estebank

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jun 5, 2021
@camsteffen
Copy link
Contributor

I wondered. Thanks for explaining.

@bors
Copy link
Contributor

bors commented Jun 6, 2021

⌛ Testing commit c30eac5 with merge 828dc104cdf74c1e275408cae179e4c3042612c3...

@bors
Copy link
Contributor

bors commented Jun 6, 2021

💔 Test failed - checks-actions

@bors bors added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Jun 6, 2021
@rust-log-analyzer
Copy link
Collaborator

A job failed! Check out the build log: (web) (plain)

Click to see the possible cause of the failure (guessed by this bot)

@JohnTitor
Copy link
Member

2021-06-06T09:13:42.6880106Z Can't find any online and idle self-hosted runner in current repository that matches the required labels: 'ubuntu-latest'
2021-06-06T09:13:42.7495606Z Can't find any online and idle self-hosted runner in current repository's organization account that matches the required labels: 'ubuntu-latest'
2021-06-06T09:13:42.8801598Z Found online and idle hosted runner in current repository's organization account that matches the required labels: 'ubuntu-latest'

@bors retry

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jun 7, 2021
bors added a commit to rust-lang-ci/rust that referenced this pull request Jun 7, 2021
Rollup of 6 pull requests

Successful merges:

 - rust-lang#84262 (Fix ICE during type layout when there's a `[type error]`)
 - rust-lang#85973 (Replace a `match` with an `if let`)
 - rust-lang#85996 (rustbuild: take changes to the standard library into account for `download-rustc`)
 - rust-lang#86016 (Unify duplicate linker_and_flavor methods in rustc_codegen_{cranelift,ssa}.)
 - rust-lang#86025 (Remove the install prefix from the rpath set when using -Crpath)
 - rust-lang#86081 (Use `try_into` instead of asserting manually)

Failed merges:

r? `@ghost`
`@rustbot` modify labels: rollup
@bors bors merged commit ac6e239 into rust-lang:master Jun 7, 2021
@rustbot rustbot added this to the 1.54.0 milestone Jun 7, 2021
@camelid camelid deleted the sized-ice branch June 8, 2021 17:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-layout Area: Memory layout of types S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

ICE: compiler/rustc_middle/src/ty/layout.rs:370:17: univariant: field comes after unsized field
10 participants