rustc_passes/lib.rs
1//! Various checks
2//!
3//! # Note
4//!
5//! This API is completely unstable and subject to change.
6
7// tidy-alphabetical-start
8#![allow(internal_features)]
9#![doc(html_root_url = "https://doc.rust-lang.org/nightly/nightly-rustc/")]
10#![doc(rust_logo)]
11#![feature(map_try_insert)]
12#![feature(rustdoc_internals)]
13// tidy-alphabetical-end
14
15use rustc_middle::util::Providers;
16
17pub mod abi_test;
18mod check_attr;
19mod check_export;
20pub mod dead;
21mod debugger_visualizer;
22mod diagnostic_items;
23pub mod entry;
24mod errors;
25#[cfg(debug_assertions)]
26pub mod hir_id_validator;
27pub mod input_stats;
28mod lang_items;
29pub mod layout_test;
30mod lib_features;
31mod liveness;
32mod reachable;
33pub mod stability;
34mod upvars;
35mod weak_lang_items;
36
37rustc_fluent_macro::fluent_messages! { "../messages.ftl" }
38
39pub fn provide(providers: &mut Providers) {
40 check_attr::provide(providers);
41 dead::provide(providers);
42 debugger_visualizer::provide(providers);
43 diagnostic_items::provide(providers);
44 entry::provide(providers);
45 lang_items::provide(providers);
46 lib_features::provide(providers);
47 liveness::provide(providers);
48 reachable::provide(providers);
49 stability::provide(providers);
50 upvars::provide(providers);
51 check_export::provide(providers);
52}