Skip to content

Commit 8797e8c

Browse files
committed
Move modern calls inside glob_adjust and reverse_glob_adjust.
1 parent 97c9437 commit 8797e8c

File tree

4 files changed

+12
-14
lines changed

4 files changed

+12
-14
lines changed

src/librustc_resolve/lib.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4525,7 +4525,7 @@ impl<'a> Resolver<'a> {
45254525
let mut ident = ident;
45264526
if ident.span.glob_adjust(
45274527
module.expansion,
4528-
binding.span.ctxt().modern(),
4528+
binding.span,
45294529
).is_none() {
45304530
continue
45314531
}

src/librustc_resolve/resolve_imports.rs

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -388,7 +388,7 @@ impl<'a> Resolver<'a> {
388388
None => return Err((Undetermined, Weak::Yes)),
389389
};
390390
let (orig_current_module, mut ident) = (self.current_module, ident.modern());
391-
match ident.span.glob_adjust(module.expansion, glob_import.span.ctxt().modern()) {
391+
match ident.span.glob_adjust(module.expansion, glob_import.span) {
392392
Some(Some(def)) => self.current_module = self.macro_def_scope(def),
393393
Some(None) => {}
394394
None => continue,
@@ -605,8 +605,7 @@ impl<'a> Resolver<'a> {
605605
// Define `binding` in `module`s glob importers.
606606
for directive in module.glob_importers.borrow_mut().iter() {
607607
let mut ident = ident.modern();
608-
let scope = match ident.span.reverse_glob_adjust(module.expansion,
609-
directive.span.ctxt().modern()) {
608+
let scope = match ident.span.reverse_glob_adjust(module.expansion, directive.span) {
610609
Some(Some(def)) => self.macro_def_scope(def),
611610
Some(None) => directive.parent_scope.module,
612611
None => continue,
@@ -1359,8 +1358,7 @@ impl<'a, 'b:'a> ImportResolver<'a, 'b> {
13591358
resolution.borrow().binding().map(|binding| (ident, binding))
13601359
}).collect::<Vec<_>>();
13611360
for ((mut ident, ns), binding) in bindings {
1362-
let scope = match ident.span.reverse_glob_adjust(module.expansion,
1363-
directive.span.ctxt().modern()) {
1361+
let scope = match ident.span.reverse_glob_adjust(module.expansion, directive.span) {
13641362
Some(Some(def)) => self.macro_def_scope(def),
13651363
Some(None) => self.current_module,
13661364
None => continue,

src/libsyntax_pos/hygiene.rs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -463,9 +463,9 @@ impl SyntaxContext {
463463
/// ```
464464
/// This returns `None` if the context cannot be glob-adjusted.
465465
/// Otherwise, it returns the scope to use when privacy checking (see `adjust` for details).
466-
pub fn glob_adjust(&mut self, expansion: Mark, mut glob_ctxt: SyntaxContext)
467-
-> Option<Option<Mark>> {
466+
pub fn glob_adjust(&mut self, expansion: Mark, glob_span: Span) -> Option<Option<Mark>> {
468467
let mut scope = None;
468+
let mut glob_ctxt = glob_span.ctxt().modern();
469469
while !expansion.outer_is_descendant_of(glob_ctxt) {
470470
scope = Some(glob_ctxt.remove_mark());
471471
if self.remove_mark() != scope.unwrap() {
@@ -485,12 +485,13 @@ impl SyntaxContext {
485485
/// assert!(self.glob_adjust(expansion, glob_ctxt) == Some(privacy_checking_scope));
486486
/// }
487487
/// ```
488-
pub fn reverse_glob_adjust(&mut self, expansion: Mark, mut glob_ctxt: SyntaxContext)
488+
pub fn reverse_glob_adjust(&mut self, expansion: Mark, glob_span: Span)
489489
-> Option<Option<Mark>> {
490490
if self.adjust(expansion).is_some() {
491491
return None;
492492
}
493493

494+
let mut glob_ctxt = glob_span.ctxt().modern();
494495
let mut marks = Vec::new();
495496
while !expansion.outer_is_descendant_of(glob_ctxt) {
496497
marks.push(glob_ctxt.remove_mark());

src/libsyntax_pos/lib.rs

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -535,19 +535,18 @@ impl Span {
535535
}
536536

537537
#[inline]
538-
pub fn glob_adjust(&mut self, expansion: Mark, glob_ctxt: SyntaxContext)
539-
-> Option<Option<Mark>> {
538+
pub fn glob_adjust(&mut self, expansion: Mark, glob_span: Span) -> Option<Option<Mark>> {
540539
let mut span = self.data();
541-
let mark = span.ctxt.glob_adjust(expansion, glob_ctxt);
540+
let mark = span.ctxt.glob_adjust(expansion, glob_span);
542541
*self = Span::new(span.lo, span.hi, span.ctxt);
543542
mark
544543
}
545544

546545
#[inline]
547-
pub fn reverse_glob_adjust(&mut self, expansion: Mark, glob_ctxt: SyntaxContext)
546+
pub fn reverse_glob_adjust(&mut self, expansion: Mark, glob_span: Span)
548547
-> Option<Option<Mark>> {
549548
let mut span = self.data();
550-
let mark = span.ctxt.reverse_glob_adjust(expansion, glob_ctxt);
549+
let mark = span.ctxt.reverse_glob_adjust(expansion, glob_span);
551550
*self = Span::new(span.lo, span.hi, span.ctxt);
552551
mark
553552
}

0 commit comments

Comments
 (0)