rust/compiler/rustc_middle
bors c5842b0be7 Auto merge of #103965 - petrochenkov:effvisperf3, r=oli-obk
resolve: More detailed effective visibility tracking for imports

Per-`DefId` tracking is not enough, due to glob imports in particular, which have a single `DefId` for the whole glob import item.
We need to track this stuff per every introduced name (`NameBinding`).

Also drop `extern` blocks from the effective visibility table, they are nominally private and it doesn't make sense to keep them there.

Later commits add some debug-only invariant checking and optimiaztions to mitigate regressions in https://github.com/rust-lang/rust/pull/103965#issuecomment-1304256445.

This is a bugfix and continuation of https://github.com/rust-lang/rust/pull/102026.
2022-11-08 14:37:40 +00:00
..
src Auto merge of #103965 - petrochenkov:effvisperf3, r=oli-obk 2022-11-08 14:37:40 +00:00
Cargo.toml rustdoc: use ThinVec for cleaned generics 2022-11-02 16:17:22 -07:00
README.md

For more information about how rustc works, see the rustc dev guide.