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#![cfg_attr(bootstrap, feature(array_windows))]
33#![feature(allocator_api)]
34#![feature(assert_matches)]
35#![feature(associated_type_defaults)]
36#![feature(box_as_ptr)]
37#![feature(box_patterns)]
38#![feature(closure_track_caller)]
39#![feature(const_default)]
40#![feature(const_trait_impl)]
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(range_bounds_is_empty)]
55#![feature(rustc_attrs)]
56#![feature(sized_hierarchy)]
57#![feature(try_blocks)]
58#![feature(try_trait_v2)]
59#![feature(try_trait_v2_residual)]
60#![feature(try_trait_v2_yeet)]
61#![feature(type_alias_impl_trait)]
62#![feature(unwrap_infallible)]
63#![feature(yeet_expr)]
64#![recursion_limit = "256"]
65#[cfg(test)]
68mod tests;
69
70#[macro_use]
71mod macros;
72
73#[macro_use]
74pub mod arena;
75pub mod error;
76pub mod hir;
77pub mod hooks;
78pub mod infer;
79pub mod lint;
80pub mod metadata;
81pub mod middle;
82pub mod mir;
83pub mod thir;
84pub mod traits;
85pub mod ty;
86pub mod util;
87mod values;
88
89#[macro_use]
90pub mod query;
91#[macro_use]
92pub mod dep_graph;
93
94extern crate self as rustc_middle;
96
97#[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" }