]> git.lizzy.rs Git - rust.git/blob - src/lib.rs
Merge pull request #2832 from kennytm/non-copy-const
[rust.git] / src / lib.rs
1 // error-pattern:cargo-clippy
2 #![feature(plugin_registrar)]
3 #![feature(rust_2018_preview)]
4 #![feature(rustc_private)]
5 #![feature(macro_vis_matcher)]
6 #![allow(unknown_lints)]
7 #![allow(missing_docs_in_private_items)]
8 #![warn(rust_2018_idioms)]
9
10 use rustc_plugin::Registry;
11
12 #[plugin_registrar]
13 pub fn plugin_registrar(reg: &mut Registry) {
14     reg.sess.lint_store.with_read_lock(|lint_store| {
15         for (lint, _, _) in lint_store.get_lint_groups() {
16             reg.sess
17                 .struct_warn(
18                     "the clippy plugin is being deprecated, please use cargo clippy or rls with the clippy feature",
19                 )
20                 .emit();
21             if lint == "clippy" {
22                 // cargo clippy run on a crate that also uses the plugin
23                 return;
24             }
25         }
26     });
27
28     clippy_lints::register_plugins(reg);
29 }
30
31 // only exists to let the dogfood integration test works.
32 // Don't run clippy as an executable directly
33 #[allow(dead_code)]
34 fn main() {
35     panic!("Please use the cargo-clippy executable");
36 }