-
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
Use ParamEnv::reveal_all
in CFI
#128580
Use ParamEnv::reveal_all
in CFI
#128580
Conversation
r? @davidtwco rustbot has assigned @davidtwco. Use |
f358fc5
to
59a3c4e
Compare
LGTM (@davidtwco FYI). Thank you for your time and for working on this, @compiler-errors! Much appreciated. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
h'lo the grammar checker in my brain found a red squiggle.
59a3c4e
to
b0beb64
Compare
…iaskrgr Rollup of 5 pull requests Successful merges: - rust-lang#122049 (Promote riscv64gc-unknown-linux-musl to tier 2) - rust-lang#128580 (Use `ParamEnv::reveal_all` in CFI) - rust-lang#128688 (custom MIR: add support for tail calls) - rust-lang#128694 (Normalize when equating `dyn` tails in MIR borrowck) - rust-lang#128697 (interpret: move nullary-op evaluation into operator.rs) r? `@ghost` `@rustbot` modify labels: rollup
Rollup merge of rust-lang#128580 - compiler-errors:cfi-param-env, r=lcnr Use `ParamEnv::reveal_all` in CFI I left a huge comment for why this ICEs in the test I committed. `typeid_for_instance` should only be called on monomorphic instances during codegen, and we should just be using `ParamEnv::reveal_all()` rather than the param-env of the instance itself. I added an assertion to ensure that we only do this for fully substituted instances (this may break with polymorphization, but I kinda don't care lol). Fixes rust-lang#114160 cc `@rcvalle`
I left a huge comment for why this ICEs in the test I committed.
typeid_for_instance
should only be called on monomorphic instances during codegen, and we should just be usingParamEnv::reveal_all()
rather than the param-env of the instance itself. I added an assertion to ensure that we only do this for fully substituted instances (this may break with polymorphization, but I kinda don't care lol).Fixes #114160
cc @rcvalle