Skip to main content

rustc_passes/
lib.rs

1//! Various checks
2//!
3//! # Note
4//!
5//! This API is completely unstable and subject to change.
6
7// tidy-alphabetical-start
8#![feature(if_let_guard)]
9#![feature(map_try_insert)]
10// tidy-alphabetical-end
11
12use rustc_middle::query::Providers;
13
14pub mod abi_test;
15mod check_attr;
16mod check_export;
17pub mod dead;
18mod debugger_visualizer;
19mod diagnostic_items;
20mod eii;
21pub mod entry;
22mod errors;
23pub mod hir_id_validator;
24pub mod input_stats;
25mod lang_items;
26pub mod layout_test;
27mod lib_features;
28mod reachable;
29pub mod stability;
30mod upvars;
31mod weak_lang_items;
32
33#[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 `passes_abi_invalid_attribute` from `passes`"]
    pub const passes_abi_invalid_attribute: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_abi_invalid_attribute"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_abi_ne` from `passes`"]
    pub const passes_abi_ne: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_abi_ne"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_abi_of` from `passes`"]
    pub const passes_abi_of: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_abi_of"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_attr_application_enum` from `passes`"]
    pub const passes_attr_application_enum: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_attr_application_enum"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_attr_application_enum.label` from `passes`"]
    pub const passes_label: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("label"));
    #[doc =
    "Constant referring to Fluent message `passes_attr_application_struct` from `passes`"]
    pub const passes_attr_application_struct: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_attr_application_struct"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_attr_application_struct_enum_union` from `passes`"]
    pub const passes_attr_application_struct_enum_union:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_attr_application_struct_enum_union"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_attr_application_struct_union` from `passes`"]
    pub const passes_attr_application_struct_union: rustc_errors::DiagMessage
        =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_attr_application_struct_union"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_autodiff_attr` from `passes`"]
    pub const passes_autodiff_attr: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_autodiff_attr"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_both_ffi_const_and_pure` from `passes`"]
    pub const passes_both_ffi_const_and_pure: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_both_ffi_const_and_pure"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_cannot_stabilize_deprecated` from `passes`"]
    pub const passes_cannot_stabilize_deprecated: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_cannot_stabilize_deprecated"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_cannot_stabilize_deprecated.item` from `passes`"]
    pub const passes_item: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("item"));
    #[doc =
    "Constant referring to Fluent message `passes_change_fields_to_be_of_unit_type` from `passes`"]
    pub const passes_change_fields_to_be_of_unit_type:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_change_fields_to_be_of_unit_type"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_const_continue_attr` from `passes`"]
    pub const passes_const_continue_attr: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_const_continue_attr"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_const_stable_not_stable` from `passes`"]
    pub const passes_const_stable_not_stable: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_const_stable_not_stable"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_custom_mir_incompatible_dialect_and_phase` from `passes`"]
    pub const passes_custom_mir_incompatible_dialect_and_phase:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_custom_mir_incompatible_dialect_and_phase"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_custom_mir_incompatible_dialect_and_phase.dialect_span` from `passes`"]
    pub const passes_dialect_span: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("dialect_span"));
    #[doc =
    "Constant referring to Fluent message `passes_custom_mir_incompatible_dialect_and_phase.phase_span` from `passes`"]
    pub const passes_phase_span: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("phase_span"));
    #[doc =
    "Constant referring to Fluent message `passes_custom_mir_phase_requires_dialect` from `passes`"]
    pub const passes_custom_mir_phase_requires_dialect:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_custom_mir_phase_requires_dialect"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_dead_codes` from `passes`"]
    pub const passes_dead_codes: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_dead_codes"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_debug_visualizer_unreadable` from `passes`"]
    pub const passes_debug_visualizer_unreadable: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_debug_visualizer_unreadable"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_deprecated_annotation_has_no_effect` from `passes`"]
    pub const passes_deprecated_annotation_has_no_effect:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_deprecated_annotation_has_no_effect"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_deprecated_annotation_has_no_effect.suggestion` from `passes`"]
    pub const passes_suggestion: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("suggestion"));
    #[doc =
    "Constant referring to Fluent message `passes_deprecated_attribute` from `passes`"]
    pub const passes_deprecated_attribute: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_deprecated_attribute"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_diagnostic_diagnostic_on_const_only_for_trait_impls` from `passes`"]
    pub const passes_diagnostic_diagnostic_on_const_only_for_trait_impls:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_diagnostic_diagnostic_on_const_only_for_trait_impls"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_diagnostic_diagnostic_on_unimplemented_only_for_traits` from `passes`"]
    pub const passes_diagnostic_diagnostic_on_unimplemented_only_for_traits:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_diagnostic_diagnostic_on_unimplemented_only_for_traits"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_diagnostic_item_first_defined` from `passes`"]
    pub const passes_diagnostic_item_first_defined: rustc_errors::DiagMessage
        =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_diagnostic_item_first_defined"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_doc_alias_bad_location` from `passes`"]
    pub const passes_doc_alias_bad_location: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_doc_alias_bad_location"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_doc_alias_not_an_alias` from `passes`"]
    pub const passes_doc_alias_not_an_alias: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_doc_alias_not_an_alias"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_doc_fake_variadic_not_valid` from `passes`"]
    pub const passes_doc_fake_variadic_not_valid: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_doc_fake_variadic_not_valid"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_doc_inline_conflict` from `passes`"]
    pub const passes_doc_inline_conflict: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_doc_inline_conflict"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_doc_inline_conflict.help` from `passes`"]
    pub const passes_help: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("help"));
    #[doc =
    "Constant referring to Fluent message `passes_doc_inline_conflict_first` from `passes`"]
    pub const passes_doc_inline_conflict_first: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_doc_inline_conflict_first"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_doc_inline_conflict_second` from `passes`"]
    pub const passes_doc_inline_conflict_second: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_doc_inline_conflict_second"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_doc_inline_only_use` from `passes`"]
    pub const passes_doc_inline_only_use: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_doc_inline_only_use"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_doc_inline_only_use.not_a_use_item_label` from `passes`"]
    pub const passes_not_a_use_item_label: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("not_a_use_item_label"));
    #[doc =
    "Constant referring to Fluent message `passes_doc_inline_only_use.note` from `passes`"]
    pub const passes_note: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("note"));
    #[doc =
    "Constant referring to Fluent message `passes_doc_keyword_attribute_empty_mod` from `passes`"]
    pub const passes_doc_keyword_attribute_empty_mod:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_doc_keyword_attribute_empty_mod"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_doc_keyword_attribute_not_mod` from `passes`"]
    pub const passes_doc_keyword_attribute_not_mod: rustc_errors::DiagMessage
        =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_doc_keyword_attribute_not_mod"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_doc_keyword_only_impl` from `passes`"]
    pub const passes_doc_keyword_only_impl: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_doc_keyword_only_impl"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_doc_masked_not_extern_crate_self` from `passes`"]
    pub const passes_doc_masked_not_extern_crate_self:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_doc_masked_not_extern_crate_self"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_doc_masked_not_extern_crate_self.extern_crate_self_label` from `passes`"]
    pub const passes_extern_crate_self_label: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("extern_crate_self_label"));
    #[doc =
    "Constant referring to Fluent message `passes_doc_masked_only_extern_crate` from `passes`"]
    pub const passes_doc_masked_only_extern_crate: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_doc_masked_only_extern_crate"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_doc_masked_only_extern_crate.not_an_extern_crate_label` from `passes`"]
    pub const passes_not_an_extern_crate_label: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("not_an_extern_crate_label"));
    #[doc =
    "Constant referring to Fluent message `passes_doc_rust_logo` from `passes`"]
    pub const passes_doc_rust_logo: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_doc_rust_logo"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_doc_search_unbox_invalid` from `passes`"]
    pub const passes_doc_search_unbox_invalid: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_doc_search_unbox_invalid"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_duplicate_diagnostic_item_in_crate` from `passes`"]
    pub const passes_duplicate_diagnostic_item_in_crate:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_duplicate_diagnostic_item_in_crate"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_duplicate_eii_impls` from `passes`"]
    pub const passes_duplicate_eii_impls: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_duplicate_eii_impls"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_duplicate_eii_impls.first` from `passes`"]
    pub const passes_first: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("first"));
    #[doc =
    "Constant referring to Fluent message `passes_duplicate_eii_impls.second` from `passes`"]
    pub const passes_second: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("second"));
    #[doc =
    "Constant referring to Fluent message `passes_duplicate_feature_err` from `passes`"]
    pub const passes_duplicate_feature_err: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_duplicate_feature_err"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_duplicate_lang_item` from `passes`"]
    pub const passes_duplicate_lang_item: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_duplicate_lang_item"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_duplicate_lang_item.first_defined_span` from `passes`"]
    pub const passes_first_defined_span: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("first_defined_span"));
    #[doc =
    "Constant referring to Fluent message `passes_duplicate_lang_item.first_defined_crate_depends` from `passes`"]
    pub const passes_first_defined_crate_depends: rustc_errors::SubdiagMessage
        =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("first_defined_crate_depends"));
    #[doc =
    "Constant referring to Fluent message `passes_duplicate_lang_item.first_defined_crate` from `passes`"]
    pub const passes_first_defined_crate: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("first_defined_crate"));
    #[doc =
    "Constant referring to Fluent message `passes_duplicate_lang_item.first_definition_local` from `passes`"]
    pub const passes_first_definition_local: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("first_definition_local"));
    #[doc =
    "Constant referring to Fluent message `passes_duplicate_lang_item.second_definition_local` from `passes`"]
    pub const passes_second_definition_local: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("second_definition_local"));
    #[doc =
    "Constant referring to Fluent message `passes_duplicate_lang_item.first_definition_path` from `passes`"]
    pub const passes_first_definition_path: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("first_definition_path"));
    #[doc =
    "Constant referring to Fluent message `passes_duplicate_lang_item.second_definition_path` from `passes`"]
    pub const passes_second_definition_path: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("second_definition_path"));
    #[doc =
    "Constant referring to Fluent message `passes_duplicate_lang_item_crate` from `passes`"]
    pub const passes_duplicate_lang_item_crate: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_duplicate_lang_item_crate"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_duplicate_lang_item_crate_depends` from `passes`"]
    pub const passes_duplicate_lang_item_crate_depends:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_duplicate_lang_item_crate_depends"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_eii_fn_with_track_caller` from `passes`"]
    pub const passes_eii_fn_with_track_caller: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_eii_fn_with_track_caller"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_eii_impl_not_function` from `passes`"]
    pub const passes_eii_impl_not_function: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_eii_impl_not_function"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_eii_impl_requires_unsafe` from `passes`"]
    pub const passes_eii_impl_requires_unsafe: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_eii_impl_requires_unsafe"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_eii_impl_requires_unsafe_suggestion` from `passes`"]
    pub const passes_eii_impl_requires_unsafe_suggestion:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_eii_impl_requires_unsafe_suggestion"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_eii_without_impl` from `passes`"]
    pub const passes_eii_without_impl: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_eii_without_impl"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_enum_variant_same_name` from `passes`"]
    pub const passes_enum_variant_same_name: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_enum_variant_same_name"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_extern_main` from `passes`"]
    pub const passes_extern_main: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_extern_main"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_feature_previously_declared` from `passes`"]
    pub const passes_feature_previously_declared: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_feature_previously_declared"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_feature_stable_twice` from `passes`"]
    pub const passes_feature_stable_twice: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_feature_stable_twice"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_function_not_found_in_trait` from `passes`"]
    pub const passes_function_not_found_in_trait: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_function_not_found_in_trait"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_function_not_have_default_implementation` from `passes`"]
    pub const passes_function_not_have_default_implementation:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_function_not_have_default_implementation"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_functions_names_duplicated` from `passes`"]
    pub const passes_functions_names_duplicated: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_functions_names_duplicated"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_ignored_derived_impls` from `passes`"]
    pub const passes_ignored_derived_impls: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_ignored_derived_impls"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_implied_feature_not_exist` from `passes`"]
    pub const passes_implied_feature_not_exist: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_implied_feature_not_exist"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_incorrect_crate_type` from `passes`"]
    pub const passes_incorrect_crate_type: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_incorrect_crate_type"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_incorrect_do_not_recommend_location` from `passes`"]
    pub const passes_incorrect_do_not_recommend_location:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_incorrect_do_not_recommend_location"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_incorrect_target` from `passes`"]
    pub const passes_incorrect_target: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_incorrect_target"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_ineffective_unstable_impl` from `passes`"]
    pub const passes_ineffective_unstable_impl: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_ineffective_unstable_impl"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_inline_ignored_for_exported` from `passes`"]
    pub const passes_inline_ignored_for_exported: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_inline_ignored_for_exported"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_inner_crate_level_attr` from `passes`"]
    pub const passes_inner_crate_level_attr: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_inner_crate_level_attr"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_invalid_attr_at_crate_level` from `passes`"]
    pub const passes_invalid_attr_at_crate_level: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_invalid_attr_at_crate_level"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_invalid_attr_at_crate_level_item` from `passes`"]
    pub const passes_invalid_attr_at_crate_level_item:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_invalid_attr_at_crate_level_item"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_lang_item_fn` from `passes`"]
    pub const passes_lang_item_fn: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_lang_item_fn"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_lang_item_fn_with_target_feature` from `passes`"]
    pub const passes_lang_item_fn_with_target_feature:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_lang_item_fn_with_target_feature"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_lang_item_fn_with_track_caller` from `passes`"]
    pub const passes_lang_item_fn_with_track_caller: rustc_errors::DiagMessage
        =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_lang_item_fn_with_track_caller"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_lang_item_on_incorrect_target` from `passes`"]
    pub const passes_lang_item_on_incorrect_target: rustc_errors::DiagMessage
        =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_lang_item_on_incorrect_target"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_layout_abi` from `passes`"]
    pub const passes_layout_abi: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_layout_abi"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_layout_align` from `passes`"]
    pub const passes_layout_align: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_layout_align"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_layout_homogeneous_aggregate` from `passes`"]
    pub const passes_layout_homogeneous_aggregate: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_layout_homogeneous_aggregate"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_layout_of` from `passes`"]
    pub const passes_layout_of: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_layout_of"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_layout_size` from `passes`"]
    pub const passes_layout_size: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_layout_size"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_link` from `passes`"]
    pub const passes_link: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_link"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_link.warn` from `passes`"]
    pub const passes_warn: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("warn"));
    #[doc =
    "Constant referring to Fluent message `passes_loop_match_attr` from `passes`"]
    pub const passes_loop_match_attr: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_loop_match_attr"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_macro_export_on_decl_macro` from `passes`"]
    pub const passes_macro_export_on_decl_macro: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_macro_export_on_decl_macro"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_macro_only_attribute` from `passes`"]
    pub const passes_macro_only_attribute: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_macro_only_attribute"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_may_dangle` from `passes`"]
    pub const passes_may_dangle: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_may_dangle"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_missing_const_err` from `passes`"]
    pub const passes_missing_const_err: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_missing_const_err"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_missing_const_stab_attr` from `passes`"]
    pub const passes_missing_const_stab_attr: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_missing_const_stab_attr"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_missing_lang_item` from `passes`"]
    pub const passes_missing_lang_item: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_missing_lang_item"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_missing_panic_handler` from `passes`"]
    pub const passes_missing_panic_handler: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_missing_panic_handler"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_missing_stability_attr` from `passes`"]
    pub const passes_missing_stability_attr: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_missing_stability_attr"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_misspelled_feature` from `passes`"]
    pub const passes_misspelled_feature: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_misspelled_feature"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_mixed_export_name_and_no_mangle` from `passes`"]
    pub const passes_mixed_export_name_and_no_mangle:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_mixed_export_name_and_no_mangle"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_multiple_rustc_main` from `passes`"]
    pub const passes_multiple_rustc_main: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_multiple_rustc_main"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_multiple_rustc_main.additional` from `passes`"]
    pub const passes_additional: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("additional"));
    #[doc =
    "Constant referring to Fluent message `passes_must_implement_not_function` from `passes`"]
    pub const passes_must_implement_not_function: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_must_implement_not_function"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_must_implement_not_function_note` from `passes`"]
    pub const passes_must_implement_not_function_note:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_must_implement_not_function_note"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_must_implement_not_function_span_note` from `passes`"]
    pub const passes_must_implement_not_function_span_note:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_must_implement_not_function_span_note"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_no_main_function` from `passes`"]
    pub const passes_no_main_function: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_no_main_function"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_no_main_function.here_is_main` from `passes`"]
    pub const passes_here_is_main: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("here_is_main"));
    #[doc =
    "Constant referring to Fluent message `passes_no_main_function.one_or_more_possible_main` from `passes`"]
    pub const passes_one_or_more_possible_main: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("one_or_more_possible_main"));
    #[doc =
    "Constant referring to Fluent message `passes_no_main_function.consider_moving_main` from `passes`"]
    pub const passes_consider_moving_main: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("consider_moving_main"));
    #[doc =
    "Constant referring to Fluent message `passes_no_main_function.main_must_be_defined_at_crate` from `passes`"]
    pub const passes_main_must_be_defined_at_crate:
        rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("main_must_be_defined_at_crate"));
    #[doc =
    "Constant referring to Fluent message `passes_no_main_function.consider_adding_main_to_file` from `passes`"]
    pub const passes_consider_adding_main_to_file:
        rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("consider_adding_main_to_file"));
    #[doc =
    "Constant referring to Fluent message `passes_no_main_function.consider_adding_main_at_crate` from `passes`"]
    pub const passes_consider_adding_main_at_crate:
        rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("consider_adding_main_at_crate"));
    #[doc =
    "Constant referring to Fluent message `passes_no_main_function.teach_note` from `passes`"]
    pub const passes_teach_note: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("teach_note"));
    #[doc =
    "Constant referring to Fluent message `passes_no_main_function.non_function_main` from `passes`"]
    pub const passes_non_function_main: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("non_function_main"));
    #[doc =
    "Constant referring to Fluent message `passes_non_exhaustive_with_default_field_values` from `passes`"]
    pub const passes_non_exhaustive_with_default_field_values:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_non_exhaustive_with_default_field_values"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_non_exported_macro_invalid_attrs` from `passes`"]
    pub const passes_non_exported_macro_invalid_attrs:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_non_exported_macro_invalid_attrs"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_object_lifetime_err` from `passes`"]
    pub const passes_object_lifetime_err: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_object_lifetime_err"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_outer_crate_level_attr` from `passes`"]
    pub const passes_outer_crate_level_attr: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_outer_crate_level_attr"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_outer_crate_level_attr_suggestion` from `passes`"]
    pub const passes_outer_crate_level_attr_suggestion:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_outer_crate_level_attr_suggestion"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_panic_unwind_without_std` from `passes`"]
    pub const passes_panic_unwind_without_std: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_panic_unwind_without_std"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_parent_info` from `passes`"]
    pub const passes_parent_info: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_parent_info"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_proc_macro_bad_sig` from `passes`"]
    pub const passes_proc_macro_bad_sig: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_proc_macro_bad_sig"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_remove_fields` from `passes`"]
    pub const passes_remove_fields: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_remove_fields"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_repr_align_greater_than_target_max` from `passes`"]
    pub const passes_repr_align_greater_than_target_max:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_repr_align_greater_than_target_max"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_repr_align_should_be_align` from `passes`"]
    pub const passes_repr_align_should_be_align: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_repr_align_should_be_align"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_repr_align_should_be_align_static` from `passes`"]
    pub const passes_repr_align_should_be_align_static:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_repr_align_should_be_align_static"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_repr_conflicting` from `passes`"]
    pub const passes_repr_conflicting: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_repr_conflicting"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_rustc_allow_const_fn_unstable` from `passes`"]
    pub const passes_rustc_allow_const_fn_unstable: rustc_errors::DiagMessage
        =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_rustc_allow_const_fn_unstable"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_rustc_const_stable_indirect_pairing` from `passes`"]
    pub const passes_rustc_const_stable_indirect_pairing:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_rustc_const_stable_indirect_pairing"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_rustc_dirty_clean` from `passes`"]
    pub const passes_rustc_dirty_clean: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_rustc_dirty_clean"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_rustc_force_inline_coro` from `passes`"]
    pub const passes_rustc_force_inline_coro: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_rustc_force_inline_coro"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_rustc_legacy_const_generics_index` from `passes`"]
    pub const passes_rustc_legacy_const_generics_index:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_rustc_legacy_const_generics_index"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_rustc_legacy_const_generics_index_exceed` from `passes`"]
    pub const passes_rustc_legacy_const_generics_index_exceed:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_rustc_legacy_const_generics_index_exceed"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_rustc_legacy_const_generics_only` from `passes`"]
    pub const passes_rustc_legacy_const_generics_only:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_rustc_legacy_const_generics_only"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_rustc_pub_transparent` from `passes`"]
    pub const passes_rustc_pub_transparent: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_rustc_pub_transparent"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_sanitize_attribute_not_allowed` from `passes`"]
    pub const passes_sanitize_attribute_not_allowed: rustc_errors::DiagMessage
        =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_sanitize_attribute_not_allowed"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_sanitize_attribute_not_allowed.not_fn_impl_mod` from `passes`"]
    pub const passes_not_fn_impl_mod: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("not_fn_impl_mod"));
    #[doc =
    "Constant referring to Fluent message `passes_sanitize_attribute_not_allowed.no_body` from `passes`"]
    pub const passes_no_body: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("no_body"));
    #[doc =
    "Constant referring to Fluent message `passes_trait_impl_const_stability_mismatch` from `passes`"]
    pub const passes_trait_impl_const_stability_mismatch:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_trait_impl_const_stability_mismatch"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_trait_impl_const_stability_mismatch_impl_stable` from `passes`"]
    pub const passes_trait_impl_const_stability_mismatch_impl_stable:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_trait_impl_const_stability_mismatch_impl_stable"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_trait_impl_const_stability_mismatch_impl_unstable` from `passes`"]
    pub const passes_trait_impl_const_stability_mismatch_impl_unstable:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_trait_impl_const_stability_mismatch_impl_unstable"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_trait_impl_const_stability_mismatch_trait_stable` from `passes`"]
    pub const passes_trait_impl_const_stability_mismatch_trait_stable:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_trait_impl_const_stability_mismatch_trait_stable"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_trait_impl_const_stability_mismatch_trait_unstable` from `passes`"]
    pub const passes_trait_impl_const_stability_mismatch_trait_unstable:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_trait_impl_const_stability_mismatch_trait_unstable"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_trait_impl_const_stable` from `passes`"]
    pub const passes_trait_impl_const_stable: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_trait_impl_const_stable"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_transparent_incompatible` from `passes`"]
    pub const passes_transparent_incompatible: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_transparent_incompatible"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_unexportable_adt_with_private_fields` from `passes`"]
    pub const passes_unexportable_adt_with_private_fields:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_unexportable_adt_with_private_fields"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_unexportable_fn_abi` from `passes`"]
    pub const passes_unexportable_fn_abi: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_unexportable_fn_abi"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_unexportable_generic_fn` from `passes`"]
    pub const passes_unexportable_generic_fn: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_unexportable_generic_fn"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_unexportable_item` from `passes`"]
    pub const passes_unexportable_item: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_unexportable_item"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_unexportable_priv_item` from `passes`"]
    pub const passes_unexportable_priv_item: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_unexportable_priv_item"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_unexportable_type_in_interface` from `passes`"]
    pub const passes_unexportable_type_in_interface: rustc_errors::DiagMessage
        =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_unexportable_type_in_interface"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_unexportable_type_repr` from `passes`"]
    pub const passes_unexportable_type_repr: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_unexportable_type_repr"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_unknown_external_lang_item` from `passes`"]
    pub const passes_unknown_external_lang_item: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_unknown_external_lang_item"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_unknown_feature` from `passes`"]
    pub const passes_unknown_feature: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_unknown_feature"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_unknown_feature_alias` from `passes`"]
    pub const passes_unknown_feature_alias: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_unknown_feature_alias"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_unknown_lang_item` from `passes`"]
    pub const passes_unknown_lang_item: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_unknown_lang_item"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_unnecessary_partial_stable_feature` from `passes`"]
    pub const passes_unnecessary_partial_stable_feature:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_unnecessary_partial_stable_feature"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_unnecessary_partial_stable_feature.suggestion_remove` from `passes`"]
    pub const passes_suggestion_remove: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("suggestion_remove"));
    #[doc =
    "Constant referring to Fluent message `passes_unnecessary_stable_feature` from `passes`"]
    pub const passes_unnecessary_stable_feature: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_unnecessary_stable_feature"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_unrecognized_argument` from `passes`"]
    pub const passes_unrecognized_argument: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_unrecognized_argument"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_unstable_attr_for_already_stable_feature` from `passes`"]
    pub const passes_unstable_attr_for_already_stable_feature:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_unstable_attr_for_already_stable_feature"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_unsupported_attributes_in_where` from `passes`"]
    pub const passes_unsupported_attributes_in_where:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_unsupported_attributes_in_where"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_unused` from `passes`"]
    pub const passes_unused: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_unused"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_unused_default_method_body_const_note` from `passes`"]
    pub const passes_unused_default_method_body_const_note:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_unused_default_method_body_const_note"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_unused_duplicate` from `passes`"]
    pub const passes_unused_duplicate: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_unused_duplicate"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_unused_empty_lints_note` from `passes`"]
    pub const passes_unused_empty_lints_note: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_unused_empty_lints_note"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_unused_linker_messages_note` from `passes`"]
    pub const passes_unused_linker_messages_note: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_unused_linker_messages_note"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_unused_multiple` from `passes`"]
    pub const passes_unused_multiple: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_unused_multiple"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_unused_no_lints_note` from `passes`"]
    pub const passes_unused_no_lints_note: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_unused_no_lints_note"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_useless_assignment` from `passes`"]
    pub const passes_useless_assignment: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_useless_assignment"),
            None);
    #[doc =
    "Constant referring to Fluent message `passes_useless_stability` from `passes`"]
    pub const passes_useless_stability: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("passes_useless_stability"),
            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" }
34
35pub fn provide(providers: &mut Providers) {
36    check_attr::provide(providers);
37    dead::provide(providers);
38    debugger_visualizer::provide(providers);
39    diagnostic_items::provide(providers);
40    entry::provide(providers);
41    lang_items::provide(providers);
42    lib_features::provide(providers);
43    reachable::provide(providers);
44    stability::provide(providers);
45    upvars::provide(providers);
46    check_export::provide(providers);
47    providers.check_externally_implementable_items = eii::check_externally_implementable_items;
48}