Skip to content
This repository was archived by the owner on May 28, 2025. It is now read-only.

Commit d4d1111

Browse files
authored
Rollup merge of rust-lang#74150 - tamird:blocklist, r=nikomatsakis
Avoid "blacklist" Other terms are more inclusive and precise. Clippy still has a lint named "blacklisted-name", but renaming it would be a breaking change, so is left for future work. The target configuration option "abi-blacklist" has been depreciated and renamed to "unsupported-abis". The old name continues to work.
2 parents 089a6e1 + 1e567c1 commit d4d1111

File tree

63 files changed

+111
-107
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

63 files changed

+111
-107
lines changed

src/librustc_error_codes/error_codes/E0570.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
The requested ABI is unsupported by the current target.
22

3-
The rust compiler maintains for each target a blacklist of ABIs unsupported on
3+
The rust compiler maintains for each target a list of unsupported ABIs on
44
that target. If an ABI is present in such a list this usually means that the
55
target / ABI combination is currently unsupported by llvm.
66

src/librustc_resolve/imports.rs

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -262,8 +262,8 @@ impl<'a> Resolver<'a> {
262262
}
263263

264264
let check_usable = |this: &mut Self, binding: &'a NameBinding<'a>| {
265-
if let Some(blacklisted_binding) = this.blacklisted_binding {
266-
if ptr::eq(binding, blacklisted_binding) {
265+
if let Some(unusable_binding) = this.unusable_binding {
266+
if ptr::eq(binding, unusable_binding) {
267267
return Err((Determined, Weak::No));
268268
}
269269
}
@@ -278,12 +278,12 @@ impl<'a> Resolver<'a> {
278278
return resolution
279279
.binding
280280
.and_then(|binding| {
281-
// If the primary binding is blacklisted, search further and return the shadowed
282-
// glob binding if it exists. What we really want here is having two separate
283-
// scopes in a module - one for non-globs and one for globs, but until that's done
284-
// use this hack to avoid inconsistent resolution ICEs during import validation.
285-
if let Some(blacklisted_binding) = self.blacklisted_binding {
286-
if ptr::eq(binding, blacklisted_binding) {
281+
// If the primary binding is unusable, search further and return the shadowed glob
282+
// binding if it exists. What we really want here is having two separate scopes in
283+
// a module - one for non-globs and one for globs, but until that's done use this
284+
// hack to avoid inconsistent resolution ICEs during import validation.
285+
if let Some(unusable_binding) = self.unusable_binding {
286+
if ptr::eq(binding, unusable_binding) {
287287
return resolution.shadowed_glob;
288288
}
289289
}
@@ -875,9 +875,9 @@ impl<'a, 'b> ImportResolver<'a, 'b> {
875875
/// consolidate multiple unresolved import errors into a single diagnostic.
876876
fn finalize_import(&mut self, import: &'b Import<'b>) -> Option<UnresolvedImportError> {
877877
let orig_vis = import.vis.replace(ty::Visibility::Invisible);
878-
let orig_blacklisted_binding = match &import.kind {
878+
let orig_unusable_binding = match &import.kind {
879879
ImportKind::Single { target_bindings, .. } => {
880-
Some(mem::replace(&mut self.r.blacklisted_binding, target_bindings[TypeNS].get()))
880+
Some(mem::replace(&mut self.r.unusable_binding, target_bindings[TypeNS].get()))
881881
}
882882
_ => None,
883883
};
@@ -891,8 +891,8 @@ impl<'a, 'b> ImportResolver<'a, 'b> {
891891
import.crate_lint(),
892892
);
893893
let no_ambiguity = self.r.ambiguity_errors.len() == prev_ambiguity_errors_len;
894-
if let Some(orig_blacklisted_binding) = orig_blacklisted_binding {
895-
self.r.blacklisted_binding = orig_blacklisted_binding;
894+
if let Some(orig_unusable_binding) = orig_unusable_binding {
895+
self.r.unusable_binding = orig_unusable_binding;
896896
}
897897
import.vis.set(orig_vis);
898898
if let PathResult::Failed { .. } | PathResult::NonModule(..) = path_res {
@@ -1013,8 +1013,8 @@ impl<'a, 'b> ImportResolver<'a, 'b> {
10131013
self.r.per_ns(|this, ns| {
10141014
if !type_ns_only || ns == TypeNS {
10151015
let orig_vis = import.vis.replace(ty::Visibility::Invisible);
1016-
let orig_blacklisted_binding =
1017-
mem::replace(&mut this.blacklisted_binding, target_bindings[ns].get());
1016+
let orig_unusable_binding =
1017+
mem::replace(&mut this.unusable_binding, target_bindings[ns].get());
10181018
let orig_last_import_segment = mem::replace(&mut this.last_import_segment, true);
10191019
let binding = this.resolve_ident_in_module(
10201020
module,
@@ -1025,7 +1025,7 @@ impl<'a, 'b> ImportResolver<'a, 'b> {
10251025
import.span,
10261026
);
10271027
this.last_import_segment = orig_last_import_segment;
1028-
this.blacklisted_binding = orig_blacklisted_binding;
1028+
this.unusable_binding = orig_unusable_binding;
10291029
import.vis.set(orig_vis);
10301030

10311031
match binding {
@@ -1291,8 +1291,8 @@ impl<'a, 'b> ImportResolver<'a, 'b> {
12911291
return;
12921292
}
12931293

1294-
let orig_blacklisted_binding =
1295-
mem::replace(&mut this.blacklisted_binding, target_bindings[ns].get());
1294+
let orig_unusable_binding =
1295+
mem::replace(&mut this.unusable_binding, target_bindings[ns].get());
12961296

12971297
match this.early_resolve_ident_in_lexical_scope(
12981298
target,
@@ -1311,7 +1311,7 @@ impl<'a, 'b> ImportResolver<'a, 'b> {
13111311
Err(_) => is_redundant[ns] = Some(false),
13121312
}
13131313

1314-
this.blacklisted_binding = orig_blacklisted_binding;
1314+
this.unusable_binding = orig_unusable_binding;
13151315
}
13161316
});
13171317

src/librustc_resolve/late.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -842,14 +842,14 @@ impl<'a, 'b, 'ast> LateResolutionVisitor<'a, 'b, 'ast> {
842842
report_error(self, ns);
843843
}
844844
Some(LexicalScopeBinding::Item(binding)) => {
845-
let orig_blacklisted_binding =
846-
replace(&mut self.r.blacklisted_binding, Some(binding));
845+
let orig_unusable_binding =
846+
replace(&mut self.r.unusable_binding, Some(binding));
847847
if let Some(LexicalScopeBinding::Res(..)) = self
848848
.resolve_ident_in_lexical_scope(ident, ns, None, use_tree.prefix.span)
849849
{
850850
report_error(self, ns);
851851
}
852-
self.r.blacklisted_binding = orig_blacklisted_binding;
852+
self.r.unusable_binding = orig_unusable_binding;
853853
}
854854
None => {}
855855
}

src/librustc_resolve/lib.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -867,7 +867,7 @@ pub struct Resolver<'a> {
867867
last_import_segment: bool,
868868
/// This binding should be ignored during in-module resolution, so that we don't get
869869
/// "self-confirming" import resolutions during import validation.
870-
blacklisted_binding: Option<&'a NameBinding<'a>>,
870+
unusable_binding: Option<&'a NameBinding<'a>>,
871871

872872
/// The idents for the primitive types.
873873
primitive_type_table: PrimitiveTypeTable,
@@ -1266,7 +1266,7 @@ impl<'a> Resolver<'a> {
12661266
indeterminate_imports: Vec::new(),
12671267

12681268
last_import_segment: false,
1269-
blacklisted_binding: None,
1269+
unusable_binding: None,
12701270

12711271
primitive_type_table: PrimitiveTypeTable::new(),
12721272

src/librustc_target/spec/aarch64_apple_ios.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ pub fn target() -> TargetResult {
1818
features: "+neon,+fp-armv8,+apple-a7".to_string(),
1919
eliminate_frame_pointer: false,
2020
max_atomic_width: Some(128),
21-
abi_blacklist: super::arm_base::abi_blacklist(),
21+
unsupported_abis: super::arm_base::unsupported_abis(),
2222
forces_embed_bitcode: true,
2323
// Taken from a clang build on Xcode 11.4.1.
2424
// These arguments are not actually invoked - they just have

src/librustc_target/spec/aarch64_apple_tvos.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ pub fn target() -> TargetResult {
1818
features: "+neon,+fp-armv8,+apple-a7".to_string(),
1919
eliminate_frame_pointer: false,
2020
max_atomic_width: Some(128),
21-
abi_blacklist: super::arm_base::abi_blacklist(),
21+
unsupported_abis: super::arm_base::unsupported_abis(),
2222
forces_embed_bitcode: true,
2323
..base
2424
},

src/librustc_target/spec/aarch64_fuchsia.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,6 @@ pub fn target() -> TargetResult {
1515
target_env: String::new(),
1616
target_vendor: String::new(),
1717
linker_flavor: LinkerFlavor::Lld(LldFlavor::Ld),
18-
options: TargetOptions { abi_blacklist: super::arm_base::abi_blacklist(), ..base },
18+
options: TargetOptions { unsupported_abis: super::arm_base::unsupported_abis(), ..base },
1919
})
2020
}

src/librustc_target/spec/aarch64_linux_android.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,6 @@ pub fn target() -> TargetResult {
2020
target_env: String::new(),
2121
target_vendor: "unknown".to_string(),
2222
linker_flavor: LinkerFlavor::Gcc,
23-
options: TargetOptions { abi_blacklist: super::arm_base::abi_blacklist(), ..base },
23+
options: TargetOptions { unsupported_abis: super::arm_base::unsupported_abis(), ..base },
2424
})
2525
}

src/librustc_target/spec/aarch64_unknown_cloudabi.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ use crate::spec::{LinkerFlavor, Target, TargetResult};
33
pub fn target() -> TargetResult {
44
let mut base = super::cloudabi_base::opts();
55
base.max_atomic_width = Some(128);
6-
base.abi_blacklist = super::arm_base::abi_blacklist();
6+
base.unsupported_abis = super::arm_base::unsupported_abis();
77
base.linker = Some("aarch64-unknown-cloudabi-cc".to_string());
88

99
Ok(Target {

src/librustc_target/spec/aarch64_unknown_freebsd.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,6 @@ pub fn target() -> TargetResult {
1515
target_env: String::new(),
1616
target_vendor: "unknown".to_string(),
1717
linker_flavor: LinkerFlavor::Gcc,
18-
options: TargetOptions { abi_blacklist: super::arm_base::abi_blacklist(), ..base },
18+
options: TargetOptions { unsupported_abis: super::arm_base::unsupported_abis(), ..base },
1919
})
2020
}

0 commit comments

Comments
 (0)