1#![allow(internal_features)]
29#![allow(rustc::direct_use_of_rustc_type_ir)]
30#![cfg_attr(bootstrap, feature(array_windows))]
31#![feature(allocator_api)]
32#![feature(assert_matches)]
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(if_let_guard)]
47#![feature(intra_doc_pointers)]
48#![feature(min_specialization)]
49#![feature(negative_impls)]
50#![feature(never_type)]
51#![feature(ptr_alignment_type)]
52#![feature(range_bounds_is_empty)]
53#![feature(rustc_attrs)]
54#![feature(sized_hierarchy)]
55#![feature(try_blocks)]
56#![feature(try_trait_v2)]
57#![feature(try_trait_v2_residual)]
58#![feature(try_trait_v2_yeet)]
59#![feature(type_alias_impl_trait)]
60#![feature(unwrap_infallible)]
61#![feature(yeet_expr)]
62#![recursion_limit = "256"]
63#[cfg(test)]
66mod tests;
67
68#[macro_use]
69mod macros;
70
71#[macro_use]
72pub mod arena;
73pub mod error;
74pub mod hir;
75pub mod hooks;
76pub mod infer;
77pub mod lint;
78pub mod metadata;
79pub mod middle;
80pub mod mir;
81pub mod thir;
82pub mod traits;
83pub mod ty;
84pub mod util;
85mod values;
86
87#[macro_use]
88pub mod query;
89#[macro_use]
90pub mod dep_graph;
91
92extern crate self as rustc_middle;
94
95#[allow(non_upper_case_globals)]
#[doc(hidden)]
#[doc =
r" Auto-generated constants for type-checked references to Fluent messages."]
pub(crate) mod fluent_generated {
#[doc =
"Constant referring to Fluent message `middle_assert_async_resume_after_drop` from `middle`"]
pub const middle_assert_async_resume_after_drop: rustc_errors::DiagMessage
=
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_assert_async_resume_after_drop"),
None);
#[doc =
"Constant referring to Fluent message `middle_assert_async_resume_after_panic` from `middle`"]
pub const middle_assert_async_resume_after_panic:
rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_assert_async_resume_after_panic"),
None);
#[doc =
"Constant referring to Fluent message `middle_assert_async_resume_after_return` from `middle`"]
pub const middle_assert_async_resume_after_return:
rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_assert_async_resume_after_return"),
None);
#[doc =
"Constant referring to Fluent message `middle_assert_coroutine_resume_after_drop` from `middle`"]
pub const middle_assert_coroutine_resume_after_drop:
rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_assert_coroutine_resume_after_drop"),
None);
#[doc =
"Constant referring to Fluent message `middle_assert_coroutine_resume_after_panic` from `middle`"]
pub const middle_assert_coroutine_resume_after_panic:
rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_assert_coroutine_resume_after_panic"),
None);
#[doc =
"Constant referring to Fluent message `middle_assert_coroutine_resume_after_return` from `middle`"]
pub const middle_assert_coroutine_resume_after_return:
rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_assert_coroutine_resume_after_return"),
None);
#[doc =
"Constant referring to Fluent message `middle_assert_divide_by_zero` from `middle`"]
pub const middle_assert_divide_by_zero: rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_assert_divide_by_zero"),
None);
#[doc =
"Constant referring to Fluent message `middle_assert_gen_resume_after_drop` from `middle`"]
pub const middle_assert_gen_resume_after_drop: rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_assert_gen_resume_after_drop"),
None);
#[doc =
"Constant referring to Fluent message `middle_assert_gen_resume_after_panic` from `middle`"]
pub const middle_assert_gen_resume_after_panic: rustc_errors::DiagMessage
=
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_assert_gen_resume_after_panic"),
None);
#[doc =
"Constant referring to Fluent message `middle_assert_invalid_enum_construction` from `middle`"]
pub const middle_assert_invalid_enum_construction:
rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_assert_invalid_enum_construction"),
None);
#[doc =
"Constant referring to Fluent message `middle_assert_misaligned_ptr_deref` from `middle`"]
pub const middle_assert_misaligned_ptr_deref: rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_assert_misaligned_ptr_deref"),
None);
#[doc =
"Constant referring to Fluent message `middle_assert_null_ptr_deref` from `middle`"]
pub const middle_assert_null_ptr_deref: rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_assert_null_ptr_deref"),
None);
#[doc =
"Constant referring to Fluent message `middle_assert_op_overflow` from `middle`"]
pub const middle_assert_op_overflow: rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_assert_op_overflow"),
None);
#[doc =
"Constant referring to Fluent message `middle_assert_overflow_neg` from `middle`"]
pub const middle_assert_overflow_neg: rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_assert_overflow_neg"),
None);
#[doc =
"Constant referring to Fluent message `middle_assert_remainder_by_zero` from `middle`"]
pub const middle_assert_remainder_by_zero: rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_assert_remainder_by_zero"),
None);
#[doc =
"Constant referring to Fluent message `middle_assert_shl_overflow` from `middle`"]
pub const middle_assert_shl_overflow: rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_assert_shl_overflow"),
None);
#[doc =
"Constant referring to Fluent message `middle_assert_shr_overflow` from `middle`"]
pub const middle_assert_shr_overflow: rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_assert_shr_overflow"),
None);
#[doc =
"Constant referring to Fluent message `middle_autodiff_unsafe_inner_const_ref` from `middle`"]
pub const middle_autodiff_unsafe_inner_const_ref:
rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_autodiff_unsafe_inner_const_ref"),
None);
#[doc =
"Constant referring to Fluent message `middle_bounds_check` from `middle`"]
pub const middle_bounds_check: rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_bounds_check"),
None);
#[doc =
"Constant referring to Fluent message `middle_conflict_types` from `middle`"]
pub const middle_conflict_types: rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_conflict_types"),
None);
#[doc =
"Constant referring to Fluent message `middle_consider_type_length_limit` from `middle`"]
pub const middle_consider_type_length_limit: rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_consider_type_length_limit"),
None);
#[doc =
"Constant referring to Fluent message `middle_const_eval_non_int` from `middle`"]
pub const middle_const_eval_non_int: rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_const_eval_non_int"),
None);
#[doc =
"Constant referring to Fluent message `middle_const_not_used_in_type_alias` from `middle`"]
pub const middle_const_not_used_in_type_alias: rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_const_not_used_in_type_alias"),
None);
#[doc =
"Constant referring to Fluent message `middle_deprecated` from `middle`"]
pub const middle_deprecated: rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_deprecated"),
None);
#[doc =
"Constant referring to Fluent message `middle_deprecated_in_future` from `middle`"]
pub const middle_deprecated_in_future: rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_deprecated_in_future"),
None);
#[doc =
"Constant referring to Fluent message `middle_deprecated_in_version` from `middle`"]
pub const middle_deprecated_in_version: rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_deprecated_in_version"),
None);
#[doc =
"Constant referring to Fluent message `middle_deprecated_suggestion` from `middle`"]
pub const middle_deprecated_suggestion: rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_deprecated_suggestion"),
None);
#[doc =
"Constant referring to Fluent message `middle_drop_check_overflow` from `middle`"]
pub const middle_drop_check_overflow: rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_drop_check_overflow"),
None);
#[doc =
"Constant referring to Fluent message `middle_drop_check_overflow.note` from `middle`"]
pub const middle_note: rustc_errors::SubdiagMessage =
rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("note"));
#[doc =
"Constant referring to Fluent message `middle_erroneous_constant` from `middle`"]
pub const middle_erroneous_constant: rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_erroneous_constant"),
None);
#[doc =
"Constant referring to Fluent message `middle_failed_writing_file` from `middle`"]
pub const middle_failed_writing_file: rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_failed_writing_file"),
None);
#[doc =
"Constant referring to Fluent message `middle_invalid_const_in_valtree` from `middle`"]
pub const middle_invalid_const_in_valtree: rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_invalid_const_in_valtree"),
None);
#[doc =
"Constant referring to Fluent message `middle_layout_cycle` from `middle`"]
pub const middle_layout_cycle: rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_layout_cycle"),
None);
#[doc =
"Constant referring to Fluent message `middle_layout_normalization_failure` from `middle`"]
pub const middle_layout_normalization_failure: rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_layout_normalization_failure"),
None);
#[doc =
"Constant referring to Fluent message `middle_layout_references_error` from `middle`"]
pub const middle_layout_references_error: rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_layout_references_error"),
None);
#[doc =
"Constant referring to Fluent message `middle_layout_simd_too_many` from `middle`"]
pub const middle_layout_simd_too_many: rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_layout_simd_too_many"),
None);
#[doc =
"Constant referring to Fluent message `middle_layout_simd_zero_length` from `middle`"]
pub const middle_layout_simd_zero_length: rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_layout_simd_zero_length"),
None);
#[doc =
"Constant referring to Fluent message `middle_layout_size_overflow` from `middle`"]
pub const middle_layout_size_overflow: rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_layout_size_overflow"),
None);
#[doc =
"Constant referring to Fluent message `middle_layout_too_generic` from `middle`"]
pub const middle_layout_too_generic: rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_layout_too_generic"),
None);
#[doc =
"Constant referring to Fluent message `middle_layout_unknown` from `middle`"]
pub const middle_layout_unknown: rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_layout_unknown"),
None);
#[doc =
"Constant referring to Fluent message `middle_max_num_nodes_in_valtree` from `middle`"]
pub const middle_max_num_nodes_in_valtree: rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_max_num_nodes_in_valtree"),
None);
#[doc =
"Constant referring to Fluent message `middle_opaque_hidden_type_mismatch` from `middle`"]
pub const middle_opaque_hidden_type_mismatch: rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_opaque_hidden_type_mismatch"),
None);
#[doc =
"Constant referring to Fluent message `middle_opaque_hidden_type_mismatch.label` from `middle`"]
pub const middle_label: rustc_errors::SubdiagMessage =
rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("label"));
#[doc =
"Constant referring to Fluent message `middle_previous_use_here` from `middle`"]
pub const middle_previous_use_here: rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_previous_use_here"),
None);
#[doc =
"Constant referring to Fluent message `middle_recursion_limit_reached` from `middle`"]
pub const middle_recursion_limit_reached: rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_recursion_limit_reached"),
None);
#[doc =
"Constant referring to Fluent message `middle_recursion_limit_reached.help` from `middle`"]
pub const middle_help: rustc_errors::SubdiagMessage =
rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("help"));
#[doc =
"Constant referring to Fluent message `middle_requires_lang_item` from `middle`"]
pub const middle_requires_lang_item: rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_requires_lang_item"),
None);
#[doc =
"Constant referring to Fluent message `middle_strict_coherence_needs_negative_coherence` from `middle`"]
pub const middle_strict_coherence_needs_negative_coherence:
rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_strict_coherence_needs_negative_coherence"),
None);
#[doc =
"Constant referring to Fluent message `middle_type_length_limit` from `middle`"]
pub const middle_type_length_limit: rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_type_length_limit"),
None);
#[doc =
"Constant referring to Fluent message `middle_unsupported_union` from `middle`"]
pub const middle_unsupported_union: rustc_errors::DiagMessage =
rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("middle_unsupported_union"),
None);
#[doc =
r" Constants expected to exist by the diagnostic derive macros to use as default Fluent"]
#[doc = r" identifiers for different subdiagnostic kinds."]
pub mod _subdiag {
#[doc = r" Default for `#[help]`"]
pub const help: rustc_errors::SubdiagMessage =
rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("help"));
#[doc = r" Default for `#[note]`"]
pub const note: rustc_errors::SubdiagMessage =
rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("note"));
#[doc = r" Default for `#[warn]`"]
pub const warn: rustc_errors::SubdiagMessage =
rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("warn"));
#[doc = r" Default for `#[label]`"]
pub const label: rustc_errors::SubdiagMessage =
rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("label"));
#[doc = r" Default for `#[suggestion]`"]
pub const suggestion: rustc_errors::SubdiagMessage =
rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("suggestion"));
}
}rustc_fluent_macro::fluent_messages! { "../messages.ftl" }