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#![feature(if_let_guard)]
9#![feature(map_try_insert)]
10// tidy-alphabetical-end
11
12use rustc_middle::util::Providers;
13
14pub mod abi_test;
15mod check_attr;
16mod check_export;
17pub mod dead;
18mod debugger_visualizer;
19mod diagnostic_items;
20mod eii;
21pub mod entry;
22mod errors;
23pub mod hir_id_validator;
24pub mod input_stats;
25mod lang_items;
26pub mod layout_test;
27mod lib_features;
28mod reachable;
29pub mod stability;
30mod upvars;
31mod weak_lang_items;
32
33rustc_fluent_macro::fluent_messages! { "../messages.ftl" }
34
35pub fn provide(providers: &mut Providers) {
36 check_attr::provide(providers);
37 dead::provide(providers);
38 debugger_visualizer::provide(providers);
39 diagnostic_items::provide(providers);
40 entry::provide(providers);
41 lang_items::provide(providers);
42 lib_features::provide(providers);
43 reachable::provide(providers);
44 stability::provide(providers);
45 upvars::provide(providers);
46 check_export::provide(providers);
47 providers.check_externally_implementable_items = eii::check_externally_implementable_items;
48}