1#![allow(internal_features)]
29#![allow(rustc::diagnostic_outside_of_impl)]
30#![allow(rustc::direct_use_of_rustc_type_ir)]
31#![allow(rustc::untranslatable_diagnostic)]
32#![doc(html_root_url = "https://doc.rust-lang.org/nightly/nightly-rustc/")]
33#![doc(rust_logo)]
34#![feature(allocator_api)]
35#![feature(array_windows)]
36#![feature(assert_matches)]
37#![feature(associated_type_defaults)]
38#![feature(box_as_ptr)]
39#![feature(box_patterns)]
40#![feature(closure_track_caller)]
41#![feature(core_intrinsics)]
42#![feature(debug_closure_helpers)]
43#![feature(decl_macro)]
44#![feature(discriminant_kind)]
45#![feature(extern_types)]
46#![feature(file_buffered)]
47#![feature(gen_blocks)]
48#![feature(if_let_guard)]
49#![feature(intra_doc_pointers)]
50#![feature(min_specialization)]
51#![feature(negative_impls)]
52#![feature(never_type)]
53#![feature(ptr_alignment_type)]
54#![feature(round_char_boundary)]
55#![feature(rustc_attrs)]
56#![feature(rustdoc_internals)]
57#![feature(sized_hierarchy)]
58#![feature(try_blocks)]
59#![feature(try_trait_v2)]
60#![feature(try_trait_v2_residual)]
61#![feature(try_trait_v2_yeet)]
62#![feature(type_alias_impl_trait)]
63#![feature(unwrap_infallible)]
64#![feature(yeet_expr)]
65#![recursion_limit = "256"]
66#[cfg(test)]
69mod tests;
70
71#[macro_use]
72mod macros;
73
74#[macro_use]
75pub mod arena;
76pub mod error;
77pub mod hir;
78pub mod hooks;
79pub mod infer;
80pub mod lint;
81pub mod metadata;
82pub mod middle;
83pub mod mir;
84pub mod thir;
85pub mod traits;
86pub mod ty;
87pub mod util;
88mod values;
89
90#[macro_use]
91pub mod query;
92#[macro_use]
93pub mod dep_graph;
94
95extern crate self as rustc_middle;
97
98rustc_fluent_macro::fluent_messages! { "../messages.ftl" }