Rename Resolver::active_features
.
For the reasons described in the previous commit.
This commit is contained in:
parent
4602d9257d
commit
eb209057b1
@ -1074,8 +1074,8 @@ pub struct Resolver<'a, 'tcx> {
|
|||||||
/// Also includes of list of each fields visibility
|
/// Also includes of list of each fields visibility
|
||||||
struct_constructors: LocalDefIdMap<(Res, ty::Visibility<DefId>, Vec<ty::Visibility<DefId>>)>,
|
struct_constructors: LocalDefIdMap<(Res, ty::Visibility<DefId>, Vec<ty::Visibility<DefId>>)>,
|
||||||
|
|
||||||
/// Features enabled for this crate.
|
/// Features declared for this crate.
|
||||||
active_features: FxHashSet<Symbol>,
|
declared_features: FxHashSet<Symbol>,
|
||||||
|
|
||||||
lint_buffer: LintBuffer,
|
lint_buffer: LintBuffer,
|
||||||
|
|
||||||
@ -1417,12 +1417,7 @@ impl<'a, 'tcx> Resolver<'a, 'tcx> {
|
|||||||
multi_segment_macro_resolutions: Default::default(),
|
multi_segment_macro_resolutions: Default::default(),
|
||||||
builtin_attrs: Default::default(),
|
builtin_attrs: Default::default(),
|
||||||
containers_deriving_copy: Default::default(),
|
containers_deriving_copy: Default::default(),
|
||||||
active_features: features
|
declared_features: features.declared_features.clone(),
|
||||||
.declared_lib_features
|
|
||||||
.iter()
|
|
||||||
.map(|(feat, ..)| *feat)
|
|
||||||
.chain(features.declared_lang_features.iter().map(|(feat, ..)| *feat))
|
|
||||||
.collect(),
|
|
||||||
lint_buffer: LintBuffer::default(),
|
lint_buffer: LintBuffer::default(),
|
||||||
next_node_id: CRATE_NODE_ID,
|
next_node_id: CRATE_NODE_ID,
|
||||||
node_id_to_def_id,
|
node_id_to_def_id,
|
||||||
|
@ -854,7 +854,7 @@ impl<'a, 'tcx> Resolver<'a, 'tcx> {
|
|||||||
let feature = stability.feature;
|
let feature = stability.feature;
|
||||||
|
|
||||||
let is_allowed = |feature| {
|
let is_allowed = |feature| {
|
||||||
self.active_features.contains(&feature) || span.allows_unstable(feature)
|
self.declared_features.contains(&feature) || span.allows_unstable(feature)
|
||||||
};
|
};
|
||||||
let allowed_by_implication = implied_by.is_some_and(|feature| is_allowed(feature));
|
let allowed_by_implication = implied_by.is_some_and(|feature| is_allowed(feature));
|
||||||
if !is_allowed(feature) && !allowed_by_implication {
|
if !is_allowed(feature) && !allowed_by_implication {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user