ImproperCTypes: redo state tracking

No changes should be visible by rustc users
This is just some architecture changes to the type checking to
facilitate FFI-safety decisions that depend on how the type is used
(the change here is not complete, there are still bits of "legacy" state
passing for this, but since this is a retconned commit, I can tell you
those bits will disappear before the end of the commit chain)
(there is at least one bit where the decision making code is weird, but
that this is because we do not want to change the lint's behaviour this
early in the chain)
This commit is contained in:
niacdoial 2025-08-24 14:23:24 +02:00
parent 050c119784
commit 20f050b444
No known key found for this signature in database
3 changed files with 226 additions and 138 deletions

View file

@ -4022,6 +4022,7 @@ dependencies = [
name = "rustc_lint"
version = "0.0.0"
dependencies = [
"bitflags",
"rustc_abi",
"rustc_ast",
"rustc_ast_pretty",