rust/compiler/rustc_resolve/src
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
..
diagnostics
late Do not make typo suggestions when suggesting pattern matching 2022-11-05 15:33:25 +00:00
build_reduced_graph.rs resolve: Turn the binding from #[macro_export] into a proper Import 2022-10-31 21:25:00 +04:00
check_unused.rs resolve: Not all imports have their own NodeId 2022-10-31 20:25:27 +04:00
def_collector.rs Rename AssocItemKind::TyAlias to AssocItemKind::Type 2022-10-10 02:31:37 +00:00
diagnostics.rs Rollup merge of #103760 - petrochenkov:macimp, r=cjgillot 2022-11-01 22:01:36 +05:30
effective_visibilities.rs resolve: Fill effective visibilities for import def ids in a separate pass 2022-11-05 17:55:20 +04:00
ident.rs Rollup merge of #103760 - petrochenkov:macimp, r=cjgillot 2022-11-01 22:01:36 +05:30
imports.rs Rollup merge of #103953 - TaKO8Ki:remove-unused-arg-from-throw_unresolved_import_error, r=oli-obk 2022-11-04 12:18:03 +01:00
late.rs Rollup merge of #103706 - zbyrn:issue-101637-fix, r=estebank 2022-11-01 14:12:26 +05:30
lib.rs resolve: More detailed effective visibility tracking for imports 2022-11-05 15:46:22 +04:00
macros.rs fix span for suggestion 2022-10-20 11:55:30 +08:00