Skip to content

Commit 5c0445a

Browse files
committed
Remove #[no_link] attribute
1 parent 485ec3f commit 5c0445a

27 files changed

Lines changed: 46 additions & 292 deletions

File tree

compiler/rustc_attr_parsing/src/attributes/mod.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,6 @@ pub(crate) mod macro_attrs;
5858
pub(crate) mod must_not_suspend;
5959
pub(crate) mod must_use;
6060
pub(crate) mod no_implicit_prelude;
61-
pub(crate) mod no_link;
6261
pub(crate) mod non_exhaustive;
6362
pub(crate) mod path;
6463
pub(crate) mod pin_v2;

compiler/rustc_attr_parsing/src/attributes/no_link.rs

Lines changed: 0 additions & 17 deletions
This file was deleted.

compiler/rustc_attr_parsing/src/context.rs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,6 @@ use crate::attributes::macro_attrs::*;
4646
use crate::attributes::must_not_suspend::*;
4747
use crate::attributes::must_use::*;
4848
use crate::attributes::no_implicit_prelude::*;
49-
use crate::attributes::no_link::*;
5049
use crate::attributes::non_exhaustive::*;
5150
use crate::attributes::path::PathParser as PathAttributeParser;
5251
use crate::attributes::pin_v2::*;
@@ -252,7 +251,6 @@ attribute_parsers!(
252251
Single<WithoutArgs<NoBuiltinsParser>>,
253252
Single<WithoutArgs<NoCoreParser>>,
254253
Single<WithoutArgs<NoImplicitPreludeParser>>,
255-
Single<WithoutArgs<NoLinkParser>>,
256254
Single<WithoutArgs<NoMainParser>>,
257255
Single<WithoutArgs<NoMangleParser>>,
258256
Single<WithoutArgs<NoStdParser>>,

compiler/rustc_feature/src/builtin_attrs.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,6 @@ pub static BUILTIN_ATTRIBUTES: &[Symbol] = &[
114114
// ABI, linking, symbols, and FFI
115115
sym::link,
116116
sym::link_name,
117-
sym::no_link,
118117
sym::repr,
119118
// FIXME(#82232, #143834): temporarily renamed to mitigate `#[align]` nameres ambiguity
120119
sym::rustc_align,

compiler/rustc_hir/src/attrs/data_structures.rs

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1146,9 +1146,6 @@ pub enum AttributeKind {
11461146
/// Represents `#[no_implicit_prelude]`
11471147
NoImplicitPrelude,
11481148

1149-
/// Represents `#[no_link]`
1150-
NoLink,
1151-
11521149
/// Represents `#[no_main]`
11531150
NoMain,
11541151

compiler/rustc_hir/src/attrs/encode_cross_crate.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,6 @@ impl AttributeKind {
7171
NoBuiltins => Yes,
7272
NoCore => No,
7373
NoImplicitPrelude => No,
74-
NoLink => No,
7574
NoMain => No,
7675
NoMangle(..) => Yes, // Needed for rustdoc
7776
NoStd => No,

compiler/rustc_metadata/src/creader.rs

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1333,11 +1333,7 @@ impl CStore {
13331333
}
13341334
None => ident.name,
13351335
};
1336-
let dep_kind = if attr::contains_name(&item.attrs, sym::no_link) {
1337-
CrateDepKind::MacrosOnly
1338-
} else {
1339-
CrateDepKind::Unconditional
1340-
};
1336+
let dep_kind = CrateDepKind::Unconditional;
13411337

13421338
let cnum =
13431339
self.resolve_crate(tcx, name, item.span, dep_kind, CrateOrigin::Extern)?;

compiler/rustc_passes/src/check_attr.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -293,7 +293,6 @@ impl<'tcx> CheckAttrVisitor<'tcx> {
293293
AttributeKind::NoBuiltins => (),
294294
AttributeKind::NoCore { .. } => (),
295295
AttributeKind::NoImplicitPrelude => (),
296-
AttributeKind::NoLink => (),
297296
AttributeKind::NoMain => (),
298297
AttributeKind::NoMangle(..) => (),
299298
AttributeKind::NoStd { .. } => (),

src/tools/clippy/clippy_lints/src/empty_line_after.rs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -157,8 +157,6 @@ impl Stop {
157157
sym::must_use |
158158
// Should be applied to a foreign function or static
159159
sym::link_name | sym::link_ordinal | sym::link_section |
160-
// Should be applied to an `extern crate` item
161-
sym::no_link |
162160
// Should be applied to a free function, impl method or static
163161
sym::export_name | sym::no_mangle |
164162
// Should be applied to a `static` variable

src/tools/rust-analyzer/crates/hir-expand/src/inert_attr_macro.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -186,7 +186,6 @@ pub const INERT_ATTRIBUTES: &[BuiltinAttribute] = &[
186186
DuplicatesOk,
187187
),
188188
ungated!(link_name, Normal, template!(NameValueStr: "name"), FutureWarnPreceding),
189-
ungated!(no_link, Normal, template!(Word), WarnFollowing),
190189
ungated!(repr, Normal, template!(List: "C"), DuplicatesOk, @only_local: true),
191190
ungated!(export_name, Normal, template!(NameValueStr: "name"), FutureWarnPreceding),
192191
ungated!(link_section, Normal, template!(NameValueStr: "name"), FutureWarnPreceding),

0 commit comments

Comments
 (0)