-
Notifications
You must be signed in to change notification settings - Fork 13.4k
ICE when building compiler plugin with nll #49250
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Comments
cc @rust-lang/wg-compiler-nll |
Ran into this when trying to bootstrap with NLL. Small repro case: #![feature(nll)]
fn foo<'r>(_: &'r ()) -> &'static () { &() }
fn main() {
let f: for<'r> fn(&'r ()) -> &'r () = foo;
} |
I think we have to fix this -- it's blocking bootstrap and it's a serious ICE. But I'm not sure what's the best fix. I have an idea but it's a bit aggressive -- still, I think I might give it a spin. The basic idea is to rerite the subtyping code to use universes, which should solve #48071 and help pave the way for chalkification. I don't think I have the bandwidth to mentor this, though, and will instead just try and do it. Assigning myself. |
In-progress branch nll-issue-48071-universe-and-sub -- basically works but I have to re-enable user-given type annotations and also I'd like to tweak the performance. |
visited for triage. this should be fixed via PR #52488 (which is WIP but hopefully will be ready soon). |
OK, #52488 has landed. This should be fixed. |
@rust-lang/wg-compiler-nll Can someone take a look and confirm this is fixed? |
I can confirm this is fixed. |
I tried the example of compiler plugin and added only the nll feature.
The result is an ICE:
The text was updated successfully, but these errors were encountered: