Skip to content

Commit

Permalink
Remove support for compiler plugins.
Browse files Browse the repository at this point in the history
They've been deprecated for four years.

This commit includes the following changes.
- It eliminates the `rustc_plugin_impl` crate.
- It changes the language used for lints in
  `compiler/rustc_driver_impl/src/lib.rs` and
  `compiler/rustc_lint/src/context.rs`. External lints are now called
  "loaded" lints, rather than "plugins" to avoid confusion with the old
  plugins. This only has a tiny effect on the output of `-W help`.
- E0457 and E0498 are no longer used.
- E0463 is narrowed, now only relating to unfound crates, not plugins.
- The `plugin` feature was moved from "active" to "removed".
- It removes the entire plugins chapter from the unstable book.
- It removes quite a few tests, mostly all of those in
  `tests/ui-fulldeps/plugin/`.

Closes rust-lang#29597.
  • Loading branch information
nnethercote committed Nov 3, 2023
1 parent d204713 commit 6eaf3f8
Showing 1 changed file with 0 additions and 18 deletions.
18 changes: 0 additions & 18 deletions crates/hir-def/src/attr/builtin.rs
Original file line number Diff line number Diff line change
Expand Up @@ -262,24 +262,6 @@ pub const INERT_ATTRIBUTES: &[BuiltinAttribute] = &[
naked_functions, experimental!(naked)
),

// Plugins:
// BuiltinAttribute {
// name: sym::plugin,
// only_local: false,
// type_: CrateLevel,
// template: template!(List: "name"),
// duplicates: DuplicatesOk,
// gate: Gated(
// Stability::Deprecated(
// "https://github.com/rust-lang/rust/pull/64675",
// Some("may be removed in a future compiler version"),
// ),
// sym::plugin,
// "compiler plugins are deprecated",
// cfg_fn!(plugin)
// ),
// },

// Testing:
gated!(
test_runner, CrateLevel, template!(List: "path"), ErrorFollowing, custom_test_frameworks,
Expand Down

0 comments on commit 6eaf3f8

Please sign in to comment.