1 #![feature(if_let_guard)]
2 #![feature(let_chains)]
3 #![cfg_attr(bootstrap, feature(let_else))]
4 #![feature(min_specialization)]
5 #![feature(never_type)]
7 #![feature(option_get_or_insert_default)]
8 #![feature(rustc_attrs)]
9 #![feature(map_many_mut)]
10 #![recursion_limit = "256"]
11 #![allow(rustc::potential_query_instability)]
12 #![deny(rustc::untranslatable_diagnostic)]
13 #![deny(rustc::diagnostic_outside_of_impl)]
16 extern crate rustc_macros;
22 pub mod cgu_reuse_tracker;
24 pub use lint::{declare_lint, declare_lint_pass, declare_tool_lint, impl_lint_pass};
25 pub use rustc_lint_defs as lint;
43 /// Requirements for a `StableHashingContext` to be used in this crate.
44 /// This is a hack to allow using the `HashStable_Generic` derive macro
45 /// instead of implementing everything in `rustc_middle`.
46 pub trait HashStableContext: rustc_ast::HashStableContext + rustc_hir::HashStableContext {}