Skip to content

Commit c064630

Browse files
committed
resolve: Scope::DeriveHelpers -> Scope::DeriveHelpersCompat
These helpers are resolved before their respective derives through a kind of look ahead into future expansions. Some of these will migrate to proper resolution, others will be deprecated. ``` #[trait_helper] // Deprecate #[derive(Trait)] #[trait_helper] // Migrate to proper resolution ```
1 parent 9b0214d commit c064630

File tree

3 files changed

+6
-6
lines changed

3 files changed

+6
-6
lines changed

src/librustc_resolve/diagnostics.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -368,7 +368,7 @@ impl<'a> Resolver<'a> {
368368
let mut suggestions = Vec::new();
369369
self.visit_scopes(scope_set, parent_scope, ident, |this, scope, use_prelude, _| {
370370
match scope {
371-
Scope::DeriveHelpers => {
371+
Scope::DeriveHelpersCompat => {
372372
let res = Res::NonMacroAttr(NonMacroAttrKind::DeriveHelper);
373373
if filter_fn(res) {
374374
for derive in parent_scope.derives {

src/librustc_resolve/lib.rs

+4-4
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ impl Determinacy {
9797
/// but not for late resolution yet.
9898
#[derive(Clone, Copy)]
9999
enum Scope<'a> {
100-
DeriveHelpers,
100+
DeriveHelpersCompat,
101101
MacroRules(LegacyScope<'a>),
102102
CrateRoot,
103103
Module(Module<'a>),
@@ -1477,14 +1477,14 @@ impl<'a> Resolver<'a> {
14771477
let mut scope = match ns {
14781478
_ if is_absolute_path => Scope::CrateRoot,
14791479
TypeNS | ValueNS => Scope::Module(module),
1480-
MacroNS => Scope::DeriveHelpers,
1480+
MacroNS => Scope::DeriveHelpersCompat,
14811481
};
14821482
let mut ident = ident.modern();
14831483
let mut use_prelude = !module.no_implicit_prelude;
14841484

14851485
loop {
14861486
let visit = match scope {
1487-
Scope::DeriveHelpers => true,
1487+
Scope::DeriveHelpersCompat => true,
14881488
Scope::MacroRules(..) => true,
14891489
Scope::CrateRoot => true,
14901490
Scope::Module(..) => true,
@@ -1505,7 +1505,7 @@ impl<'a> Resolver<'a> {
15051505
}
15061506

15071507
scope = match scope {
1508-
Scope::DeriveHelpers =>
1508+
Scope::DeriveHelpersCompat =>
15091509
Scope::MacroRules(parent_scope.legacy),
15101510
Scope::MacroRules(legacy_scope) => match legacy_scope {
15111511
LegacyScope::Binding(binding) => Scope::MacroRules(

src/librustc_resolve/macros.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -498,7 +498,7 @@ impl<'a> Resolver<'a> {
498498
Flags::empty(),
499499
));
500500
let result = match scope {
501-
Scope::DeriveHelpers => {
501+
Scope::DeriveHelpersCompat => {
502502
let mut result = Err(Determinacy::Determined);
503503
for derive in parent_scope.derives {
504504
let parent_scope = &ParentScope { derives: &[], ..*parent_scope };

0 commit comments

Comments
 (0)