Skip to content

Commit 32fd8f7

Browse files
committed
WIP
1 parent 3af17a0 commit 32fd8f7

File tree

1 file changed

+3
-17
lines changed

1 file changed

+3
-17
lines changed

compiler/rustc_resolve/src/access_levels.rs

Lines changed: 3 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@ use rustc_hir::def_id::LocalDefId;
1212
use rustc_hir::def_id::CRATE_DEF_ID;
1313
use rustc_middle::middle::privacy::AccessLevel;
1414
use rustc_middle::ty::DefIdTree;
15-
use rustc_middle::ty::Visibility;
1615
use rustc_span::sym;
1716

1817
pub struct AccessLevelsVisitor<'r, 'a> {
@@ -106,28 +105,15 @@ impl<'r, 'a> AccessLevelsVisitor<'r, 'a> {
106105
) -> Option<AccessLevel> {
107106
let old_level = self.r.access_levels.get_access_level(def_id);
108107
if old_level < access_level {
109-
self.set_access_level_wrapper(def_id, access_level);
108+
let mut access_levels = std::mem::take(&mut self.r.access_levels);
109+
access_levels.set_access_level(def_id, access_level, &*self.r);
110+
self.r.access_levels = access_levels;
110111
self.changed = true;
111112
access_level
112113
} else {
113114
old_level
114115
}
115116
}
116-
117-
fn set_access_level_wrapper(
118-
&mut self,
119-
id: LocalDefId,
120-
access_level: Option<AccessLevel>,
121-
) -> Option<AccessLevel> {
122-
if let Some(tag) = access_level {
123-
let mut effective_vis =
124-
self.r.access_levels.get_effective_vis(id).copied().unwrap_or_default();
125-
126-
effective_vis.update(Some(Visibility::Public), tag, &*self.r);
127-
self.r.access_levels.set_effective_vis(id, effective_vis);
128-
}
129-
self.r.access_levels.get_access_level(id)
130-
}
131117
}
132118

133119
impl<'r, 'ast> Visitor<'ast> for AccessLevelsVisitor<'ast, 'r> {

0 commit comments

Comments
 (0)