1#![allow(internal_features)]
29#![allow(rustc::direct_use_of_rustc_type_ir)]
30#![cfg_attr(bootstrap, feature(assert_matches))]
31#![cfg_attr(doc, feature(intra_doc_pointers))]
32#![feature(allocator_api)]
33#![feature(associated_type_defaults)]
34#![feature(box_as_ptr)]
35#![feature(box_patterns)]
36#![feature(closure_track_caller)]
37#![feature(const_default)]
38#![feature(const_trait_impl)]
39#![feature(core_intrinsics)]
40#![feature(debug_closure_helpers)]
41#![feature(decl_macro)]
42#![feature(discriminant_kind)]
43#![feature(extern_types)]
44#![feature(file_buffered)]
45#![feature(gen_blocks)]
46#![feature(min_specialization)]
47#![feature(negative_impls)]
48#![feature(never_type)]
49#![feature(ptr_alignment_type)]
50#![feature(range_bounds_is_empty)]
51#![feature(rustc_attrs)]
52#![feature(sized_hierarchy)]
53#![feature(trait_alias)]
54#![feature(try_blocks)]
55#![feature(try_trait_v2)]
56#![feature(try_trait_v2_residual)]
57#![feature(try_trait_v2_yeet)]
58#![feature(type_alias_impl_trait)]
59#![feature(yeet_expr)]
60#![recursion_limit = "256"]
61#[cfg(test)]
64mod tests;
65
66#[macro_use]
67mod macros;
68
69#[macro_use]
70pub mod arena;
71
72pub mod dep_graph;
73pub mod error;
74pub mod hir;
75pub mod hooks;
76pub mod ich;
77pub mod infer;
78pub mod lint;
79pub mod metadata;
80pub mod middle;
81pub mod mir;
82pub mod mono;
83pub mod queries;
84pub mod query;
85pub mod thir;
86pub mod traits;
87pub mod ty;
88pub mod util;
89pub mod verify_ich;
90
91extern crate self as rustc_middle;