Skip to main content

rustc_lint/
lib.rs

1//! Lints, aka compiler warnings.
2//!
3//! A 'lint' check is a kind of miscellaneous constraint that a user _might_
4//! want to enforce, but might reasonably want to permit as well, on a
5//! module-by-module basis. They contrast with static constraints enforced by
6//! other phases of the compiler, which are generally required to hold in order
7//! to compile the program at all.
8//!
9//! Most lints can be written as [`LintPass`] instances. These run after
10//! all other analyses. The `LintPass`es built into rustc are defined
11//! within [rustc_session::lint::builtin],
12//! which has further comments on how to add such a lint.
13//! rustc can also load external lint plugins, as is done for Clippy.
14//!
15//! See <https://rustc-dev-guide.rust-lang.org/diagnostics.html> for an
16//! overview of how lints are implemented.
17//!
18//! ## Note
19//!
20//! This API is completely unstable and subject to change.
21
22// tidy-alphabetical-start
23#![allow(internal_features)]
24#![feature(assert_matches)]
25#![feature(box_patterns)]
26#![feature(if_let_guard)]
27#![feature(iter_order_by)]
28#![feature(rustc_attrs)]
29#![feature(try_blocks)]
30// tidy-alphabetical-end
31
32mod async_closures;
33mod async_fn_in_trait;
34mod autorefs;
35pub mod builtin;
36mod context;
37mod dangling;
38mod default_could_be_derived;
39mod deref_into_dyn_supertrait;
40mod drop_forget_useless;
41mod early;
42mod enum_intrinsics_non_enums;
43mod errors;
44mod expect;
45mod for_loops_over_fallibles;
46mod foreign_modules;
47mod function_cast_as_integer;
48mod gpukernel_abi;
49mod if_let_rescope;
50mod impl_trait_overcaptures;
51mod interior_mutable_consts;
52mod internal;
53mod invalid_from_utf8;
54mod late;
55mod let_underscore;
56mod levels;
57pub mod lifetime_syntax;
58mod lints;
59mod macro_expr_fragment_specifier_2024_migration;
60mod map_unit_fn;
61mod multiple_supertrait_upcastable;
62mod non_ascii_idents;
63mod non_fmt_panic;
64mod non_local_def;
65mod nonstandard_style;
66mod noop_method_call;
67mod opaque_hidden_inferred_bound;
68mod pass_by_value;
69mod passes;
70mod precedence;
71mod ptr_nulls;
72mod redundant_semicolon;
73mod reference_casting;
74mod shadowed_into_iter;
75mod static_mut_refs;
76mod traits;
77mod transmute;
78mod types;
79mod unit_bindings;
80mod unqualified_local_imports;
81mod unused;
82mod utils;
83
84use async_closures::AsyncClosureUsage;
85use async_fn_in_trait::AsyncFnInTrait;
86use autorefs::*;
87use builtin::*;
88use dangling::*;
89use default_could_be_derived::DefaultCouldBeDerived;
90use deref_into_dyn_supertrait::*;
91use drop_forget_useless::*;
92use enum_intrinsics_non_enums::EnumIntrinsicsNonEnums;
93use for_loops_over_fallibles::*;
94use function_cast_as_integer::*;
95use gpukernel_abi::*;
96use if_let_rescope::IfLetRescope;
97use impl_trait_overcaptures::ImplTraitOvercaptures;
98use interior_mutable_consts::*;
99use internal::*;
100use invalid_from_utf8::*;
101use let_underscore::*;
102use lifetime_syntax::*;
103use macro_expr_fragment_specifier_2024_migration::*;
104use map_unit_fn::*;
105use multiple_supertrait_upcastable::*;
106use non_ascii_idents::*;
107use non_fmt_panic::NonPanicFmt;
108use non_local_def::*;
109use nonstandard_style::*;
110use noop_method_call::*;
111use opaque_hidden_inferred_bound::*;
112use pass_by_value::*;
113use precedence::*;
114use ptr_nulls::*;
115use redundant_semicolon::*;
116use reference_casting::*;
117use rustc_hir::def_id::LocalModDefId;
118use rustc_middle::query::Providers;
119use rustc_middle::ty::TyCtxt;
120use shadowed_into_iter::ShadowedIntoIter;
121pub use shadowed_into_iter::{ARRAY_INTO_ITER, BOXED_SLICE_INTO_ITER};
122use static_mut_refs::*;
123use traits::*;
124use transmute::CheckTransmutes;
125use types::*;
126use unit_bindings::*;
127use unqualified_local_imports::*;
128use unused::*;
129
130#[rustfmt::skip]
131pub use builtin::{MissingDoc, SoftLints};
132pub use context::{CheckLintNameResult, EarlyContext, LateContext, LintContext, LintStore};
133pub use early::diagnostics::{decorate_attribute_lint, decorate_builtin_lint};
134pub use early::{EarlyCheckNode, check_ast_node};
135pub use late::{check_crate, late_lint_mod, unerased_lint_store};
136pub use levels::LintLevelsBuilder;
137pub use passes::{EarlyLintPass, LateLintPass};
138pub use rustc_errors::BufferedEarlyLint;
139pub use rustc_session::lint::Level::{self, *};
140pub use rustc_session::lint::{FutureIncompatibleInfo, Lint, LintId, LintPass, LintVec};
141
142#[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 `lint_abs_path_with_module` from `lint`"]
    pub const lint_abs_path_with_module: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_abs_path_with_module"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_abs_path_with_module.suggestion` from `lint`"]
    pub const lint_suggestion: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("suggestion"));
    #[doc =
    "Constant referring to Fluent message `lint_ambiguous_glob_reexport` from `lint`"]
    pub const lint_ambiguous_glob_reexport: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_ambiguous_glob_reexport"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_ambiguous_glob_reexport.label_first_reexport` from `lint`"]
    pub const lint_label_first_reexport: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("label_first_reexport"));
    #[doc =
    "Constant referring to Fluent message `lint_ambiguous_glob_reexport.label_duplicate_reexport` from `lint`"]
    pub const lint_label_duplicate_reexport: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("label_duplicate_reexport"));
    #[doc =
    "Constant referring to Fluent message `lint_ambiguous_negative_literals` from `lint`"]
    pub const lint_ambiguous_negative_literals: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_ambiguous_negative_literals"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_ambiguous_negative_literals.example` from `lint`"]
    pub const lint_example: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("example"));
    #[doc =
    "Constant referring to Fluent message `lint_ambiguous_negative_literals.negative_literal` from `lint`"]
    pub const lint_negative_literal: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("negative_literal"));
    #[doc =
    "Constant referring to Fluent message `lint_ambiguous_negative_literals.current_behavior` from `lint`"]
    pub const lint_current_behavior: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("current_behavior"));
    #[doc =
    "Constant referring to Fluent message `lint_ambiguous_wide_pointer_comparisons` from `lint`"]
    pub const lint_ambiguous_wide_pointer_comparisons:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_ambiguous_wide_pointer_comparisons"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_ambiguous_wide_pointer_comparisons.addr_metadata_suggestion` from `lint`"]
    pub const lint_addr_metadata_suggestion: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("addr_metadata_suggestion"));
    #[doc =
    "Constant referring to Fluent message `lint_ambiguous_wide_pointer_comparisons.addr_suggestion` from `lint`"]
    pub const lint_addr_suggestion: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("addr_suggestion"));
    #[doc =
    "Constant referring to Fluent message `lint_ambiguous_wide_pointer_comparisons.cast_suggestion` from `lint`"]
    pub const lint_cast_suggestion: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("cast_suggestion"));
    #[doc =
    "Constant referring to Fluent message `lint_ambiguous_wide_pointer_comparisons.expect_suggestion` from `lint`"]
    pub const lint_expect_suggestion: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("expect_suggestion"));
    #[doc =
    "Constant referring to Fluent message `lint_associated_const_elided_lifetime` from `lint`"]
    pub const lint_associated_const_elided_lifetime: rustc_errors::DiagMessage
        =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_associated_const_elided_lifetime"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_associated_const_elided_lifetime.note` from `lint`"]
    pub const lint_note: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("note"));
    #[doc =
    "Constant referring to Fluent message `lint_async_fn_in_trait` from `lint`"]
    pub const lint_async_fn_in_trait: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_async_fn_in_trait"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_atomic_ordering_fence` from `lint`"]
    pub const lint_atomic_ordering_fence: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_atomic_ordering_fence"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_atomic_ordering_fence.help` from `lint`"]
    pub const lint_help: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("help"));
    #[doc =
    "Constant referring to Fluent message `lint_atomic_ordering_invalid` from `lint`"]
    pub const lint_atomic_ordering_invalid: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_atomic_ordering_invalid"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_atomic_ordering_invalid.label` from `lint`"]
    pub const lint_label: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("label"));
    #[doc =
    "Constant referring to Fluent message `lint_atomic_ordering_load` from `lint`"]
    pub const lint_atomic_ordering_load: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_atomic_ordering_load"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_atomic_ordering_store` from `lint`"]
    pub const lint_atomic_ordering_store: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_atomic_ordering_store"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_attr_crate_level` from `lint`"]
    pub const lint_attr_crate_level: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_attr_crate_level"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_bad_attribute_argument` from `lint`"]
    pub const lint_bad_attribute_argument: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_bad_attribute_argument"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_bad_opt_access` from `lint`"]
    pub const lint_bad_opt_access: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_bad_opt_access"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_break_with_label_and_loop` from `lint`"]
    pub const lint_break_with_label_and_loop: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_break_with_label_and_loop"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_allow_internal_unsafe` from `lint`"]
    pub const lint_builtin_allow_internal_unsafe: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_allow_internal_unsafe"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_anonymous_params` from `lint`"]
    pub const lint_builtin_anonymous_params: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_anonymous_params"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_clashing_extern_diff_name` from `lint`"]
    pub const lint_builtin_clashing_extern_diff_name:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_clashing_extern_diff_name"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_clashing_extern_diff_name.previous_decl_label` from `lint`"]
    pub const lint_previous_decl_label: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("previous_decl_label"));
    #[doc =
    "Constant referring to Fluent message `lint_builtin_clashing_extern_diff_name.mismatch_label` from `lint`"]
    pub const lint_mismatch_label: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("mismatch_label"));
    #[doc =
    "Constant referring to Fluent message `lint_builtin_clashing_extern_same_name` from `lint`"]
    pub const lint_builtin_clashing_extern_same_name:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_clashing_extern_same_name"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_const_no_mangle` from `lint`"]
    pub const lint_builtin_const_no_mangle: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_const_no_mangle"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_decl_unsafe_fn` from `lint`"]
    pub const lint_builtin_decl_unsafe_fn: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_decl_unsafe_fn"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_decl_unsafe_method` from `lint`"]
    pub const lint_builtin_decl_unsafe_method: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_decl_unsafe_method"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_deref_nullptr` from `lint`"]
    pub const lint_builtin_deref_nullptr: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_deref_nullptr"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_double_negations` from `lint`"]
    pub const lint_builtin_double_negations: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_double_negations"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_double_negations.note_decrement` from `lint`"]
    pub const lint_note_decrement: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("note_decrement"));
    #[doc =
    "Constant referring to Fluent message `lint_builtin_double_negations.add_parens_suggestion` from `lint`"]
    pub const lint_add_parens_suggestion: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("add_parens_suggestion"));
    #[doc =
    "Constant referring to Fluent message `lint_builtin_ellipsis_inclusive_range_patterns` from `lint`"]
    pub const lint_builtin_ellipsis_inclusive_range_patterns:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_ellipsis_inclusive_range_patterns"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_explicit_outlives` from `lint`"]
    pub const lint_builtin_explicit_outlives: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_explicit_outlives"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_export_name_fn` from `lint`"]
    pub const lint_builtin_export_name_fn: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_export_name_fn"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_export_name_method` from `lint`"]
    pub const lint_builtin_export_name_method: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_export_name_method"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_export_name_static` from `lint`"]
    pub const lint_builtin_export_name_static: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_export_name_static"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_global_asm` from `lint`"]
    pub const lint_builtin_global_asm: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_global_asm"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_global_macro_unsafety` from `lint`"]
    pub const lint_builtin_global_macro_unsafety: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_global_macro_unsafety"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_impl_unsafe_method` from `lint`"]
    pub const lint_builtin_impl_unsafe_method: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_impl_unsafe_method"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_incomplete_features` from `lint`"]
    pub const lint_builtin_incomplete_features: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_incomplete_features"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_internal_features` from `lint`"]
    pub const lint_builtin_internal_features: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_internal_features"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_keyword_idents` from `lint`"]
    pub const lint_builtin_keyword_idents: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_keyword_idents"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_link_section_fn` from `lint`"]
    pub const lint_builtin_link_section_fn: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_link_section_fn"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_link_section_static` from `lint`"]
    pub const lint_builtin_link_section_static: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_link_section_static"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_missing_copy_impl` from `lint`"]
    pub const lint_builtin_missing_copy_impl: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_missing_copy_impl"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_missing_debug_impl` from `lint`"]
    pub const lint_builtin_missing_debug_impl: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_missing_debug_impl"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_missing_doc` from `lint`"]
    pub const lint_builtin_missing_doc: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_missing_doc"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_mutable_transmutes` from `lint`"]
    pub const lint_builtin_mutable_transmutes: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_mutable_transmutes"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_no_mangle_fn` from `lint`"]
    pub const lint_builtin_no_mangle_fn: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_no_mangle_fn"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_no_mangle_generic` from `lint`"]
    pub const lint_builtin_no_mangle_generic: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_no_mangle_generic"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_no_mangle_method` from `lint`"]
    pub const lint_builtin_no_mangle_method: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_no_mangle_method"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_no_mangle_static` from `lint`"]
    pub const lint_builtin_no_mangle_static: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_no_mangle_static"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_non_shorthand_field_patterns` from `lint`"]
    pub const lint_builtin_non_shorthand_field_patterns:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_non_shorthand_field_patterns"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_overridden_symbol_name` from `lint`"]
    pub const lint_builtin_overridden_symbol_name: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_overridden_symbol_name"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_overridden_symbol_section` from `lint`"]
    pub const lint_builtin_overridden_symbol_section:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_overridden_symbol_section"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_special_module_name_used_lib` from `lint`"]
    pub const lint_builtin_special_module_name_used_lib:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_special_module_name_used_lib"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_special_module_name_used_main` from `lint`"]
    pub const lint_builtin_special_module_name_used_main:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_special_module_name_used_main"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_trivial_bounds` from `lint`"]
    pub const lint_builtin_trivial_bounds: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_trivial_bounds"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_type_alias_bounds_enable_feat_help` from `lint`"]
    pub const lint_builtin_type_alias_bounds_enable_feat_help:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_type_alias_bounds_enable_feat_help"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_type_alias_bounds_label` from `lint`"]
    pub const lint_builtin_type_alias_bounds_label: rustc_errors::DiagMessage
        =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_type_alias_bounds_label"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_type_alias_bounds_limitation_note` from `lint`"]
    pub const lint_builtin_type_alias_bounds_limitation_note:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_type_alias_bounds_limitation_note"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_type_alias_bounds_param_bounds` from `lint`"]
    pub const lint_builtin_type_alias_bounds_param_bounds:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_type_alias_bounds_param_bounds"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_type_alias_bounds_qualify_assoc_tys_sugg` from `lint`"]
    pub const lint_builtin_type_alias_bounds_qualify_assoc_tys_sugg:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_type_alias_bounds_qualify_assoc_tys_sugg"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_type_alias_bounds_where_clause` from `lint`"]
    pub const lint_builtin_type_alias_bounds_where_clause:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_type_alias_bounds_where_clause"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_unpermitted_type_init_label` from `lint`"]
    pub const lint_builtin_unpermitted_type_init_label:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_unpermitted_type_init_label"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_unpermitted_type_init_label_suggestion` from `lint`"]
    pub const lint_builtin_unpermitted_type_init_label_suggestion:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_unpermitted_type_init_label_suggestion"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_unpermitted_type_init_uninit` from `lint`"]
    pub const lint_builtin_unpermitted_type_init_uninit:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_unpermitted_type_init_uninit"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_unpermitted_type_init_zeroed` from `lint`"]
    pub const lint_builtin_unpermitted_type_init_zeroed:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_unpermitted_type_init_zeroed"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_unreachable_pub` from `lint`"]
    pub const lint_builtin_unreachable_pub: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_unreachable_pub"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_unsafe_block` from `lint`"]
    pub const lint_builtin_unsafe_block: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_unsafe_block"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_unsafe_extern_block` from `lint`"]
    pub const lint_builtin_unsafe_extern_block: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_unsafe_extern_block"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_unsafe_impl` from `lint`"]
    pub const lint_builtin_unsafe_impl: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_unsafe_impl"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_unsafe_trait` from `lint`"]
    pub const lint_builtin_unsafe_trait: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_unsafe_trait"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_unstable_features` from `lint`"]
    pub const lint_builtin_unstable_features: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_unstable_features"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_unused_doc_comment` from `lint`"]
    pub const lint_builtin_unused_doc_comment: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_unused_doc_comment"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_builtin_unused_doc_comment.plain_help` from `lint`"]
    pub const lint_plain_help: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("plain_help"));
    #[doc =
    "Constant referring to Fluent message `lint_builtin_unused_doc_comment.block_help` from `lint`"]
    pub const lint_block_help: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("block_help"));
    #[doc =
    "Constant referring to Fluent message `lint_builtin_while_true` from `lint`"]
    pub const lint_builtin_while_true: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_builtin_while_true"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_check_name_unknown_tool` from `lint`"]
    pub const lint_check_name_unknown_tool: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_check_name_unknown_tool"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_closure_returning_async_block` from `lint`"]
    pub const lint_closure_returning_async_block: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_closure_returning_async_block"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_command_line_source` from `lint`"]
    pub const lint_command_line_source: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_command_line_source"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_confusable_identifier_pair` from `lint`"]
    pub const lint_confusable_identifier_pair: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_confusable_identifier_pair"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_confusable_identifier_pair.current_use` from `lint`"]
    pub const lint_current_use: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("current_use"));
    #[doc =
    "Constant referring to Fluent message `lint_confusable_identifier_pair.other_use` from `lint`"]
    pub const lint_other_use: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("other_use"));
    #[doc =
    "Constant referring to Fluent message `lint_const_item_interior_mutations` from `lint`"]
    pub const lint_const_item_interior_mutations: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_const_item_interior_mutations"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_const_item_interior_mutations.temporary` from `lint`"]
    pub const lint_temporary: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("temporary"));
    #[doc =
    "Constant referring to Fluent message `lint_const_item_interior_mutations.never_original` from `lint`"]
    pub const lint_never_original: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("never_original"));
    #[doc =
    "Constant referring to Fluent message `lint_const_item_interior_mutations.suggestion_static` from `lint`"]
    pub const lint_suggestion_static: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("suggestion_static"));
    #[doc =
    "Constant referring to Fluent message `lint_dangling_pointers_from_locals` from `lint`"]
    pub const lint_dangling_pointers_from_locals: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_dangling_pointers_from_locals"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_dangling_pointers_from_locals.ret_ty` from `lint`"]
    pub const lint_ret_ty: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("ret_ty"));
    #[doc =
    "Constant referring to Fluent message `lint_dangling_pointers_from_locals.local_var` from `lint`"]
    pub const lint_local_var: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("local_var"));
    #[doc =
    "Constant referring to Fluent message `lint_dangling_pointers_from_locals.created_at` from `lint`"]
    pub const lint_created_at: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("created_at"));
    #[doc =
    "Constant referring to Fluent message `lint_dangling_pointers_from_locals.note_safe` from `lint`"]
    pub const lint_note_safe: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("note_safe"));
    #[doc =
    "Constant referring to Fluent message `lint_dangling_pointers_from_locals.note_more_info` from `lint`"]
    pub const lint_note_more_info: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("note_more_info"));
    #[doc =
    "Constant referring to Fluent message `lint_dangling_pointers_from_temporaries` from `lint`"]
    pub const lint_dangling_pointers_from_temporaries:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_dangling_pointers_from_temporaries"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_dangling_pointers_from_temporaries.label_ptr` from `lint`"]
    pub const lint_label_ptr: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("label_ptr"));
    #[doc =
    "Constant referring to Fluent message `lint_dangling_pointers_from_temporaries.label_temporary` from `lint`"]
    pub const lint_label_temporary: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("label_temporary"));
    #[doc =
    "Constant referring to Fluent message `lint_dangling_pointers_from_temporaries.help_bind` from `lint`"]
    pub const lint_help_bind: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("help_bind"));
    #[doc =
    "Constant referring to Fluent message `lint_dangling_pointers_from_temporaries.note_return` from `lint`"]
    pub const lint_note_return: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("note_return"));
    #[doc =
    "Constant referring to Fluent message `lint_default_hash_types` from `lint`"]
    pub const lint_default_hash_types: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_default_hash_types"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_default_source` from `lint`"]
    pub const lint_default_source: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_default_source"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_deprecated_lint_name` from `lint`"]
    pub const lint_deprecated_lint_name: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_deprecated_lint_name"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_deprecated_where_clause_location` from `lint`"]
    pub const lint_deprecated_where_clause_location: rustc_errors::DiagMessage
        =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_deprecated_where_clause_location"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_deprecated_where_clause_location.suggestion_move_to_end` from `lint`"]
    pub const lint_suggestion_move_to_end: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("suggestion_move_to_end"));
    #[doc =
    "Constant referring to Fluent message `lint_deprecated_where_clause_location.suggestion_remove_where` from `lint`"]
    pub const lint_suggestion_remove_where: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("suggestion_remove_where"));
    #[doc =
    "Constant referring to Fluent message `lint_doc_alias_duplicated` from `lint`"]
    pub const lint_doc_alias_duplicated: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_doc_alias_duplicated"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_doc_auto_cfg_expects_hide_or_show` from `lint`"]
    pub const lint_doc_auto_cfg_expects_hide_or_show:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_doc_auto_cfg_expects_hide_or_show"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_doc_auto_cfg_hide_show_expects_list` from `lint`"]
    pub const lint_doc_auto_cfg_hide_show_expects_list:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_doc_auto_cfg_hide_show_expects_list"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_doc_auto_cfg_hide_show_unexpected_item` from `lint`"]
    pub const lint_doc_auto_cfg_hide_show_unexpected_item:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_doc_auto_cfg_hide_show_unexpected_item"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_doc_auto_cfg_wrong_literal` from `lint`"]
    pub const lint_doc_auto_cfg_wrong_literal: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_doc_auto_cfg_wrong_literal"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_doc_invalid` from `lint`"]
    pub const lint_doc_invalid: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_doc_invalid"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_doc_test_literal` from `lint`"]
    pub const lint_doc_test_literal: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_doc_test_literal"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_doc_test_takes_list` from `lint`"]
    pub const lint_doc_test_takes_list: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_doc_test_takes_list"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_doc_test_unknown` from `lint`"]
    pub const lint_doc_test_unknown: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_doc_test_unknown"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_doc_unknown_any` from `lint`"]
    pub const lint_doc_unknown_any: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_doc_unknown_any"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_doc_unknown_include` from `lint`"]
    pub const lint_doc_unknown_include: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_doc_unknown_include"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_doc_unknown_passes` from `lint`"]
    pub const lint_doc_unknown_passes: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_doc_unknown_passes"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_doc_unknown_passes.no_op_note` from `lint`"]
    pub const lint_no_op_note: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("no_op_note"));
    #[doc =
    "Constant referring to Fluent message `lint_doc_unknown_plugins` from `lint`"]
    pub const lint_doc_unknown_plugins: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_doc_unknown_plugins"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_doc_unknown_spotlight` from `lint`"]
    pub const lint_doc_unknown_spotlight: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_doc_unknown_spotlight"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_drop_glue` from `lint`"]
    pub const lint_drop_glue: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_drop_glue"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_drop_trait_constraints` from `lint`"]
    pub const lint_drop_trait_constraints: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_drop_trait_constraints"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_dropping_copy_types` from `lint`"]
    pub const lint_dropping_copy_types: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_dropping_copy_types"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_dropping_references` from `lint`"]
    pub const lint_dropping_references: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_dropping_references"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_empty_attribute` from `lint`"]
    pub const lint_empty_attribute: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_empty_attribute"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_enum_intrinsics_mem_discriminant` from `lint`"]
    pub const lint_enum_intrinsics_mem_discriminant: rustc_errors::DiagMessage
        =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_enum_intrinsics_mem_discriminant"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_enum_intrinsics_mem_variant` from `lint`"]
    pub const lint_enum_intrinsics_mem_variant: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_enum_intrinsics_mem_variant"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_expectation` from `lint`"]
    pub const lint_expectation: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_expectation"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_expectation.rationale` from `lint`"]
    pub const lint_rationale: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("rationale"));
    #[doc =
    "Constant referring to Fluent message `lint_for_loops_over_fallibles` from `lint`"]
    pub const lint_for_loops_over_fallibles: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_for_loops_over_fallibles"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_for_loops_over_fallibles.remove_next` from `lint`"]
    pub const lint_remove_next: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("remove_next"));
    #[doc =
    "Constant referring to Fluent message `lint_for_loops_over_fallibles.use_while_let` from `lint`"]
    pub const lint_use_while_let: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("use_while_let"));
    #[doc =
    "Constant referring to Fluent message `lint_for_loops_over_fallibles.use_question_mark` from `lint`"]
    pub const lint_use_question_mark: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("use_question_mark"));
    #[doc =
    "Constant referring to Fluent message `lint_forgetting_copy_types` from `lint`"]
    pub const lint_forgetting_copy_types: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_forgetting_copy_types"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_forgetting_references` from `lint`"]
    pub const lint_forgetting_references: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_forgetting_references"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_function_casts_as_integer` from `lint`"]
    pub const lint_function_casts_as_integer: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_function_casts_as_integer"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_function_casts_as_integer.cast_as_fn` from `lint`"]
    pub const lint_cast_as_fn: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("cast_as_fn"));
    #[doc =
    "Constant referring to Fluent message `lint_hidden_glob_reexport` from `lint`"]
    pub const lint_hidden_glob_reexport: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_hidden_glob_reexport"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_hidden_glob_reexport.note_glob_reexport` from `lint`"]
    pub const lint_note_glob_reexport: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("note_glob_reexport"));
    #[doc =
    "Constant referring to Fluent message `lint_hidden_glob_reexport.note_private_item` from `lint`"]
    pub const lint_note_private_item: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("note_private_item"));
    #[doc =
    "Constant referring to Fluent message `lint_hidden_lifetime_parameters` from `lint`"]
    pub const lint_hidden_lifetime_parameters: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_hidden_lifetime_parameters"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_identifier_non_ascii_char` from `lint`"]
    pub const lint_identifier_non_ascii_char: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_identifier_non_ascii_char"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_identifier_uncommon_codepoints` from `lint`"]
    pub const lint_identifier_uncommon_codepoints: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_identifier_uncommon_codepoints"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_if_let_dtor` from `lint`"]
    pub const lint_if_let_dtor: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_if_let_dtor"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_if_let_rescope` from `lint`"]
    pub const lint_if_let_rescope: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_if_let_rescope"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_ignored_unless_crate_specified` from `lint`"]
    pub const lint_ignored_unless_crate_specified: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_ignored_unless_crate_specified"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_ill_formed_attribute_input` from `lint`"]
    pub const lint_ill_formed_attribute_input: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_ill_formed_attribute_input"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_impl_trait_overcaptures` from `lint`"]
    pub const lint_impl_trait_overcaptures: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_impl_trait_overcaptures"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_impl_trait_overcaptures.note2` from `lint`"]
    pub const lint_note2: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("note2"));
    #[doc =
    "Constant referring to Fluent message `lint_impl_trait_redundant_captures` from `lint`"]
    pub const lint_impl_trait_redundant_captures: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_impl_trait_redundant_captures"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_implicit_sysroot_crate_import` from `lint`"]
    pub const lint_implicit_sysroot_crate_import: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_implicit_sysroot_crate_import"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_implicit_unsafe_autorefs` from `lint`"]
    pub const lint_implicit_unsafe_autorefs: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_implicit_unsafe_autorefs"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_implicit_unsafe_autorefs.raw_ptr` from `lint`"]
    pub const lint_raw_ptr: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("raw_ptr"));
    #[doc =
    "Constant referring to Fluent message `lint_implicit_unsafe_autorefs.autoref` from `lint`"]
    pub const lint_autoref: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("autoref"));
    #[doc =
    "Constant referring to Fluent message `lint_implicit_unsafe_autorefs.overloaded_deref` from `lint`"]
    pub const lint_overloaded_deref: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("overloaded_deref"));
    #[doc =
    "Constant referring to Fluent message `lint_implicit_unsafe_autorefs.method_def` from `lint`"]
    pub const lint_method_def: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("method_def"));
    #[doc =
    "Constant referring to Fluent message `lint_improper_ctypes` from `lint`"]
    pub const lint_improper_ctypes: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_improper_ctypes"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_improper_ctypes_array_help` from `lint`"]
    pub const lint_improper_ctypes_array_help: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_improper_ctypes_array_help"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_improper_ctypes_array_reason` from `lint`"]
    pub const lint_improper_ctypes_array_reason: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_improper_ctypes_array_reason"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_improper_ctypes_box` from `lint`"]
    pub const lint_improper_ctypes_box: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_improper_ctypes_box"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_improper_ctypes_char_help` from `lint`"]
    pub const lint_improper_ctypes_char_help: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_improper_ctypes_char_help"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_improper_ctypes_char_reason` from `lint`"]
    pub const lint_improper_ctypes_char_reason: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_improper_ctypes_char_reason"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_improper_ctypes_cstr_help` from `lint`"]
    pub const lint_improper_ctypes_cstr_help: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_improper_ctypes_cstr_help"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_improper_ctypes_cstr_reason` from `lint`"]
    pub const lint_improper_ctypes_cstr_reason: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_improper_ctypes_cstr_reason"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_improper_ctypes_dyn` from `lint`"]
    pub const lint_improper_ctypes_dyn: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_improper_ctypes_dyn"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_improper_ctypes_enum_repr_help` from `lint`"]
    pub const lint_improper_ctypes_enum_repr_help: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_improper_ctypes_enum_repr_help"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_improper_ctypes_enum_repr_reason` from `lint`"]
    pub const lint_improper_ctypes_enum_repr_reason: rustc_errors::DiagMessage
        =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_improper_ctypes_enum_repr_reason"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_improper_ctypes_fnptr_help` from `lint`"]
    pub const lint_improper_ctypes_fnptr_help: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_improper_ctypes_fnptr_help"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_improper_ctypes_fnptr_reason` from `lint`"]
    pub const lint_improper_ctypes_fnptr_reason: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_improper_ctypes_fnptr_reason"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_improper_ctypes_non_exhaustive` from `lint`"]
    pub const lint_improper_ctypes_non_exhaustive: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_improper_ctypes_non_exhaustive"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_improper_ctypes_non_exhaustive_variant` from `lint`"]
    pub const lint_improper_ctypes_non_exhaustive_variant:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_improper_ctypes_non_exhaustive_variant"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_improper_ctypes_only_phantomdata` from `lint`"]
    pub const lint_improper_ctypes_only_phantomdata: rustc_errors::DiagMessage
        =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_improper_ctypes_only_phantomdata"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_improper_ctypes_opaque` from `lint`"]
    pub const lint_improper_ctypes_opaque: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_improper_ctypes_opaque"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_improper_ctypes_slice_help` from `lint`"]
    pub const lint_improper_ctypes_slice_help: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_improper_ctypes_slice_help"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_improper_ctypes_slice_reason` from `lint`"]
    pub const lint_improper_ctypes_slice_reason: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_improper_ctypes_slice_reason"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_improper_ctypes_str_help` from `lint`"]
    pub const lint_improper_ctypes_str_help: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_improper_ctypes_str_help"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_improper_ctypes_str_reason` from `lint`"]
    pub const lint_improper_ctypes_str_reason: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_improper_ctypes_str_reason"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_improper_ctypes_struct_fieldless_help` from `lint`"]
    pub const lint_improper_ctypes_struct_fieldless_help:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_improper_ctypes_struct_fieldless_help"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_improper_ctypes_struct_fieldless_reason` from `lint`"]
    pub const lint_improper_ctypes_struct_fieldless_reason:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_improper_ctypes_struct_fieldless_reason"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_improper_ctypes_struct_layout_help` from `lint`"]
    pub const lint_improper_ctypes_struct_layout_help:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_improper_ctypes_struct_layout_help"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_improper_ctypes_struct_layout_reason` from `lint`"]
    pub const lint_improper_ctypes_struct_layout_reason:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_improper_ctypes_struct_layout_reason"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_improper_ctypes_struct_non_exhaustive` from `lint`"]
    pub const lint_improper_ctypes_struct_non_exhaustive:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_improper_ctypes_struct_non_exhaustive"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_improper_ctypes_struct_zst` from `lint`"]
    pub const lint_improper_ctypes_struct_zst: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_improper_ctypes_struct_zst"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_improper_ctypes_tuple_help` from `lint`"]
    pub const lint_improper_ctypes_tuple_help: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_improper_ctypes_tuple_help"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_improper_ctypes_tuple_reason` from `lint`"]
    pub const lint_improper_ctypes_tuple_reason: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_improper_ctypes_tuple_reason"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_improper_ctypes_union_fieldless_help` from `lint`"]
    pub const lint_improper_ctypes_union_fieldless_help:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_improper_ctypes_union_fieldless_help"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_improper_ctypes_union_fieldless_reason` from `lint`"]
    pub const lint_improper_ctypes_union_fieldless_reason:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_improper_ctypes_union_fieldless_reason"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_improper_ctypes_union_layout_help` from `lint`"]
    pub const lint_improper_ctypes_union_layout_help:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_improper_ctypes_union_layout_help"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_improper_ctypes_union_layout_reason` from `lint`"]
    pub const lint_improper_ctypes_union_layout_reason:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_improper_ctypes_union_layout_reason"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_improper_ctypes_union_non_exhaustive` from `lint`"]
    pub const lint_improper_ctypes_union_non_exhaustive:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_improper_ctypes_union_non_exhaustive"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_improper_ctypes_unsafe_binder` from `lint`"]
    pub const lint_improper_ctypes_unsafe_binder: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_improper_ctypes_unsafe_binder"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_improper_gpu_kernel_arg` from `lint`"]
    pub const lint_improper_gpu_kernel_arg: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_improper_gpu_kernel_arg"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_incorrect_do_not_recommend_args` from `lint`"]
    pub const lint_incorrect_do_not_recommend_args: rustc_errors::DiagMessage
        =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_incorrect_do_not_recommend_args"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_int_to_ptr_transmutes` from `lint`"]
    pub const lint_int_to_ptr_transmutes: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_int_to_ptr_transmutes"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_int_to_ptr_transmutes.note_exposed_provenance` from `lint`"]
    pub const lint_note_exposed_provenance: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("note_exposed_provenance"));
    #[doc =
    "Constant referring to Fluent message `lint_int_to_ptr_transmutes.help_transmute` from `lint`"]
    pub const lint_help_transmute: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("help_transmute"));
    #[doc =
    "Constant referring to Fluent message `lint_int_to_ptr_transmutes.help_exposed_provenance` from `lint`"]
    pub const lint_help_exposed_provenance: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("help_exposed_provenance"));
    #[doc =
    "Constant referring to Fluent message `lint_int_to_ptr_transmutes.suggestion_with_exposed_provenance` from `lint`"]
    pub const lint_suggestion_with_exposed_provenance:
        rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("suggestion_with_exposed_provenance"));
    #[doc =
    "Constant referring to Fluent message `lint_int_to_ptr_transmutes.suggestion_without_provenance_mut` from `lint`"]
    pub const lint_suggestion_without_provenance_mut:
        rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("suggestion_without_provenance_mut"));
    #[doc =
    "Constant referring to Fluent message `lint_invalid_asm_label_binary` from `lint`"]
    pub const lint_invalid_asm_label_binary: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_invalid_asm_label_binary"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_invalid_asm_label_binary.note1` from `lint`"]
    pub const lint_note1: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("note1"));
    #[doc =
    "Constant referring to Fluent message `lint_invalid_asm_label_format_arg` from `lint`"]
    pub const lint_invalid_asm_label_format_arg: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_invalid_asm_label_format_arg"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_invalid_asm_label_named` from `lint`"]
    pub const lint_invalid_asm_label_named: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_invalid_asm_label_named"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_invalid_asm_label_no_span` from `lint`"]
    pub const lint_invalid_asm_label_no_span: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_invalid_asm_label_no_span"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_invalid_crate_type_value` from `lint`"]
    pub const lint_invalid_crate_type_value: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_invalid_crate_type_value"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_invalid_from_utf8_checked` from `lint`"]
    pub const lint_invalid_from_utf8_checked: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_invalid_from_utf8_checked"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_invalid_from_utf8_unchecked` from `lint`"]
    pub const lint_invalid_from_utf8_unchecked: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_invalid_from_utf8_unchecked"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_invalid_nan_comparisons_eq_ne` from `lint`"]
    pub const lint_invalid_nan_comparisons_eq_ne: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_invalid_nan_comparisons_eq_ne"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_invalid_nan_comparisons_lt_le_gt_ge` from `lint`"]
    pub const lint_invalid_nan_comparisons_lt_le_gt_ge:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_invalid_nan_comparisons_lt_le_gt_ge"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_invalid_null_arguments` from `lint`"]
    pub const lint_invalid_null_arguments: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_invalid_null_arguments"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_invalid_null_arguments.origin` from `lint`"]
    pub const lint_origin: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("origin"));
    #[doc =
    "Constant referring to Fluent message `lint_invalid_null_arguments.doc` from `lint`"]
    pub const lint_doc: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("doc"));
    #[doc =
    "Constant referring to Fluent message `lint_invalid_reference_casting_assign_to_ref` from `lint`"]
    pub const lint_invalid_reference_casting_assign_to_ref:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_invalid_reference_casting_assign_to_ref"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_invalid_reference_casting_bigger_layout` from `lint`"]
    pub const lint_invalid_reference_casting_bigger_layout:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_invalid_reference_casting_bigger_layout"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_invalid_reference_casting_bigger_layout.alloc` from `lint`"]
    pub const lint_alloc: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("alloc"));
    #[doc =
    "Constant referring to Fluent message `lint_invalid_reference_casting_bigger_layout.layout` from `lint`"]
    pub const lint_layout: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("layout"));
    #[doc =
    "Constant referring to Fluent message `lint_invalid_reference_casting_borrow_as_mut` from `lint`"]
    pub const lint_invalid_reference_casting_borrow_as_mut:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_invalid_reference_casting_borrow_as_mut"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_invalid_reference_casting_note_book` from `lint`"]
    pub const lint_invalid_reference_casting_note_book:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_invalid_reference_casting_note_book"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_invalid_reference_casting_note_ty_has_interior_mutability` from `lint`"]
    pub const lint_invalid_reference_casting_note_ty_has_interior_mutability:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_invalid_reference_casting_note_ty_has_interior_mutability"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_invalid_style` from `lint`"]
    pub const lint_invalid_style: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_invalid_style"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_invalid_target` from `lint`"]
    pub const lint_invalid_target: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_invalid_target"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_invalid_target.warn` from `lint`"]
    pub const lint_warn: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("warn"));
    #[doc =
    "Constant referring to Fluent message `lint_lintpass_by_hand` from `lint`"]
    pub const lint_lintpass_by_hand: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_lintpass_by_hand"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_macro_expr_fragment_specifier_2024_migration` from `lint`"]
    pub const lint_macro_expr_fragment_specifier_2024_migration:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_macro_expr_fragment_specifier_2024_migration"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_malformed_attribute` from `lint`"]
    pub const lint_malformed_attribute: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_malformed_attribute"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_map_unit_fn` from `lint`"]
    pub const lint_map_unit_fn: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_map_unit_fn"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_map_unit_fn.function_label` from `lint`"]
    pub const lint_function_label: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("function_label"));
    #[doc =
    "Constant referring to Fluent message `lint_map_unit_fn.argument_label` from `lint`"]
    pub const lint_argument_label: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("argument_label"));
    #[doc =
    "Constant referring to Fluent message `lint_map_unit_fn.map_label` from `lint`"]
    pub const lint_map_label: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("map_label"));
    #[doc =
    "Constant referring to Fluent message `lint_mismatched_lifetime_syntaxes_eliding_while_named` from `lint`"]
    pub const lint_mismatched_lifetime_syntaxes_eliding_while_named:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_mismatched_lifetime_syntaxes_eliding_while_named"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_mismatched_lifetime_syntaxes_help` from `lint`"]
    pub const lint_mismatched_lifetime_syntaxes_help:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_mismatched_lifetime_syntaxes_help"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_mismatched_lifetime_syntaxes_hiding_and_eliding_while_named` from `lint`"]
    pub const
        lint_mismatched_lifetime_syntaxes_hiding_and_eliding_while_named:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_mismatched_lifetime_syntaxes_hiding_and_eliding_while_named"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_mismatched_lifetime_syntaxes_hiding_while_elided` from `lint`"]
    pub const lint_mismatched_lifetime_syntaxes_hiding_while_elided:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_mismatched_lifetime_syntaxes_hiding_while_elided"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_mismatched_lifetime_syntaxes_hiding_while_named` from `lint`"]
    pub const lint_mismatched_lifetime_syntaxes_hiding_while_named:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_mismatched_lifetime_syntaxes_hiding_while_named"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_mismatched_lifetime_syntaxes_input_elided` from `lint`"]
    pub const lint_mismatched_lifetime_syntaxes_input_elided:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_mismatched_lifetime_syntaxes_input_elided"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_mismatched_lifetime_syntaxes_input_hidden` from `lint`"]
    pub const lint_mismatched_lifetime_syntaxes_input_hidden:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_mismatched_lifetime_syntaxes_input_hidden"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_mismatched_lifetime_syntaxes_input_named` from `lint`"]
    pub const lint_mismatched_lifetime_syntaxes_input_named:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_mismatched_lifetime_syntaxes_input_named"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_mismatched_lifetime_syntaxes_output_elided` from `lint`"]
    pub const lint_mismatched_lifetime_syntaxes_output_elided:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_mismatched_lifetime_syntaxes_output_elided"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_mismatched_lifetime_syntaxes_output_hidden` from `lint`"]
    pub const lint_mismatched_lifetime_syntaxes_output_hidden:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_mismatched_lifetime_syntaxes_output_hidden"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_mismatched_lifetime_syntaxes_output_named` from `lint`"]
    pub const lint_mismatched_lifetime_syntaxes_output_named:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_mismatched_lifetime_syntaxes_output_named"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_mismatched_lifetime_syntaxes_suggestion_explicit` from `lint`"]
    pub const lint_mismatched_lifetime_syntaxes_suggestion_explicit:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_mismatched_lifetime_syntaxes_suggestion_explicit"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_mismatched_lifetime_syntaxes_suggestion_implicit` from `lint`"]
    pub const lint_mismatched_lifetime_syntaxes_suggestion_implicit:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_mismatched_lifetime_syntaxes_suggestion_implicit"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_mismatched_lifetime_syntaxes_suggestion_mixed` from `lint`"]
    pub const lint_mismatched_lifetime_syntaxes_suggestion_mixed:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_mismatched_lifetime_syntaxes_suggestion_mixed"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_mismatched_lifetime_syntaxes_suggestion_mixed_only_paths` from `lint`"]
    pub const lint_mismatched_lifetime_syntaxes_suggestion_mixed_only_paths:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_mismatched_lifetime_syntaxes_suggestion_mixed_only_paths"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_missing_gpu_kernel_export_name` from `lint`"]
    pub const lint_missing_gpu_kernel_export_name: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_missing_gpu_kernel_export_name"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_mixed_script_confusables` from `lint`"]
    pub const lint_mixed_script_confusables: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_mixed_script_confusables"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_mixed_script_confusables.includes_note` from `lint`"]
    pub const lint_includes_note: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("includes_note"));
    #[doc =
    "Constant referring to Fluent message `lint_multiple_supertrait_upcastable` from `lint`"]
    pub const lint_multiple_supertrait_upcastable: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_multiple_supertrait_upcastable"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_named_argument_used_positionally` from `lint`"]
    pub const lint_named_argument_used_positionally: rustc_errors::DiagMessage
        =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_named_argument_used_positionally"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_named_argument_used_positionally.label_named_arg` from `lint`"]
    pub const lint_label_named_arg: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("label_named_arg"));
    #[doc =
    "Constant referring to Fluent message `lint_named_argument_used_positionally.label_position_arg` from `lint`"]
    pub const lint_label_position_arg: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("label_position_arg"));
    #[doc =
    "Constant referring to Fluent message `lint_node_source` from `lint`"]
    pub const lint_node_source: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_node_source"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_non_binding_let_multi_drop_fn` from `lint`"]
    pub const lint_non_binding_let_multi_drop_fn: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_non_binding_let_multi_drop_fn"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_non_binding_let_multi_suggestion` from `lint`"]
    pub const lint_non_binding_let_multi_suggestion: rustc_errors::DiagMessage
        =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_non_binding_let_multi_suggestion"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_non_binding_let_on_drop_type` from `lint`"]
    pub const lint_non_binding_let_on_drop_type: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_non_binding_let_on_drop_type"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_non_binding_let_on_sync_lock` from `lint`"]
    pub const lint_non_binding_let_on_sync_lock: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_non_binding_let_on_sync_lock"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_non_binding_let_suggestion` from `lint`"]
    pub const lint_non_binding_let_suggestion: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_non_binding_let_suggestion"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_non_camel_case_type` from `lint`"]
    pub const lint_non_camel_case_type: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_non_camel_case_type"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_non_fmt_panic` from `lint`"]
    pub const lint_non_fmt_panic: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_non_fmt_panic"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_non_fmt_panic.more_info_note` from `lint`"]
    pub const lint_more_info_note: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("more_info_note"));
    #[doc =
    "Constant referring to Fluent message `lint_non_fmt_panic.supports_fmt_note` from `lint`"]
    pub const lint_supports_fmt_note: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("supports_fmt_note"));
    #[doc =
    "Constant referring to Fluent message `lint_non_fmt_panic.supports_fmt_suggestion` from `lint`"]
    pub const lint_supports_fmt_suggestion: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("supports_fmt_suggestion"));
    #[doc =
    "Constant referring to Fluent message `lint_non_fmt_panic.display_suggestion` from `lint`"]
    pub const lint_display_suggestion: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("display_suggestion"));
    #[doc =
    "Constant referring to Fluent message `lint_non_fmt_panic.debug_suggestion` from `lint`"]
    pub const lint_debug_suggestion: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("debug_suggestion"));
    #[doc =
    "Constant referring to Fluent message `lint_non_fmt_panic.panic_suggestion` from `lint`"]
    pub const lint_panic_suggestion: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("panic_suggestion"));
    #[doc =
    "Constant referring to Fluent message `lint_non_fmt_panic_braces` from `lint`"]
    pub const lint_non_fmt_panic_braces: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_non_fmt_panic_braces"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_non_fmt_panic_unused` from `lint`"]
    pub const lint_non_fmt_panic_unused: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_non_fmt_panic_unused"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_non_fmt_panic_unused.add_args_suggestion` from `lint`"]
    pub const lint_add_args_suggestion: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("add_args_suggestion"));
    #[doc =
    "Constant referring to Fluent message `lint_non_fmt_panic_unused.add_fmt_suggestion` from `lint`"]
    pub const lint_add_fmt_suggestion: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("add_fmt_suggestion"));
    #[doc =
    "Constant referring to Fluent message `lint_non_glob_import_type_ir_inherent` from `lint`"]
    pub const lint_non_glob_import_type_ir_inherent: rustc_errors::DiagMessage
        =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_non_glob_import_type_ir_inherent"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_non_local_definitions_cargo_update` from `lint`"]
    pub const lint_non_local_definitions_cargo_update:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_non_local_definitions_cargo_update"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_non_local_definitions_impl` from `lint`"]
    pub const lint_non_local_definitions_impl: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_non_local_definitions_impl"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_non_local_definitions_impl.non_local` from `lint`"]
    pub const lint_non_local: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("non_local"));
    #[doc =
    "Constant referring to Fluent message `lint_non_local_definitions_impl.doctest` from `lint`"]
    pub const lint_doctest: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("doctest"));
    #[doc =
    "Constant referring to Fluent message `lint_non_local_definitions_impl.exception` from `lint`"]
    pub const lint_exception: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("exception"));
    #[doc =
    "Constant referring to Fluent message `lint_non_local_definitions_impl.const_anon` from `lint`"]
    pub const lint_const_anon: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("const_anon"));
    #[doc =
    "Constant referring to Fluent message `lint_non_local_definitions_impl.macro_to_change` from `lint`"]
    pub const lint_macro_to_change: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("macro_to_change"));
    #[doc =
    "Constant referring to Fluent message `lint_non_local_definitions_impl_move_help` from `lint`"]
    pub const lint_non_local_definitions_impl_move_help:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_non_local_definitions_impl_move_help"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_non_local_definitions_macro_rules` from `lint`"]
    pub const lint_non_local_definitions_macro_rules:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_non_local_definitions_macro_rules"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_non_local_definitions_macro_rules.help_doctest` from `lint`"]
    pub const lint_help_doctest: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("help_doctest"));
    #[doc =
    "Constant referring to Fluent message `lint_non_snake_case` from `lint`"]
    pub const lint_non_snake_case: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_non_snake_case"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_non_snake_case.rename_or_convert_suggestion` from `lint`"]
    pub const lint_rename_or_convert_suggestion: rustc_errors::SubdiagMessage
        =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("rename_or_convert_suggestion"));
    #[doc =
    "Constant referring to Fluent message `lint_non_snake_case.cannot_convert_note` from `lint`"]
    pub const lint_cannot_convert_note: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("cannot_convert_note"));
    #[doc =
    "Constant referring to Fluent message `lint_non_snake_case.rename_suggestion` from `lint`"]
    pub const lint_rename_suggestion: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("rename_suggestion"));
    #[doc =
    "Constant referring to Fluent message `lint_non_snake_case.convert_suggestion` from `lint`"]
    pub const lint_convert_suggestion: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("convert_suggestion"));
    #[doc =
    "Constant referring to Fluent message `lint_non_upper_case_global` from `lint`"]
    pub const lint_non_upper_case_global: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_non_upper_case_global"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_noop_method_call` from `lint`"]
    pub const lint_noop_method_call: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_noop_method_call"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_noop_method_call.derive_suggestion` from `lint`"]
    pub const lint_derive_suggestion: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("derive_suggestion"));
    #[doc =
    "Constant referring to Fluent message `lint_only_cast_u8_to_char` from `lint`"]
    pub const lint_only_cast_u8_to_char: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_only_cast_u8_to_char"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_opaque_hidden_inferred_bound` from `lint`"]
    pub const lint_opaque_hidden_inferred_bound: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_opaque_hidden_inferred_bound"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_opaque_hidden_inferred_bound.specifically` from `lint`"]
    pub const lint_specifically: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("specifically"));
    #[doc =
    "Constant referring to Fluent message `lint_opaque_hidden_inferred_bound_sugg` from `lint`"]
    pub const lint_opaque_hidden_inferred_bound_sugg:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_opaque_hidden_inferred_bound_sugg"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_overflowing_bin_hex` from `lint`"]
    pub const lint_overflowing_bin_hex: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_overflowing_bin_hex"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_overflowing_bin_hex.negative_note` from `lint`"]
    pub const lint_negative_note: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("negative_note"));
    #[doc =
    "Constant referring to Fluent message `lint_overflowing_bin_hex.negative_becomes_note` from `lint`"]
    pub const lint_negative_becomes_note: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("negative_becomes_note"));
    #[doc =
    "Constant referring to Fluent message `lint_overflowing_bin_hex.positive_note` from `lint`"]
    pub const lint_positive_note: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("positive_note"));
    #[doc =
    "Constant referring to Fluent message `lint_overflowing_bin_hex.sign_bit_suggestion` from `lint`"]
    pub const lint_sign_bit_suggestion: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("sign_bit_suggestion"));
    #[doc =
    "Constant referring to Fluent message `lint_overflowing_int` from `lint`"]
    pub const lint_overflowing_int: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_overflowing_int"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_overflowing_literal` from `lint`"]
    pub const lint_overflowing_literal: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_overflowing_literal"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_overflowing_uint` from `lint`"]
    pub const lint_overflowing_uint: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_overflowing_uint"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_overruled_attribute` from `lint`"]
    pub const lint_overruled_attribute: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_overruled_attribute"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_pass_by_value` from `lint`"]
    pub const lint_pass_by_value: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_pass_by_value"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_path_statement_drop` from `lint`"]
    pub const lint_path_statement_drop: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_path_statement_drop"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_path_statement_no_effect` from `lint`"]
    pub const lint_path_statement_no_effect: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_path_statement_no_effect"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_pattern_in_bodiless` from `lint`"]
    pub const lint_pattern_in_bodiless: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_pattern_in_bodiless"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_pattern_in_foreign` from `lint`"]
    pub const lint_pattern_in_foreign: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_pattern_in_foreign"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_query_instability` from `lint`"]
    pub const lint_query_instability: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_query_instability"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_query_untracked` from `lint`"]
    pub const lint_query_untracked: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_query_untracked"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_range_endpoint_out_of_range` from `lint`"]
    pub const lint_range_endpoint_out_of_range: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_range_endpoint_out_of_range"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_range_use_inclusive_range` from `lint`"]
    pub const lint_range_use_inclusive_range: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_range_use_inclusive_range"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_raw_prefix` from `lint`"]
    pub const lint_raw_prefix: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_raw_prefix"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_reason_must_be_string_literal` from `lint`"]
    pub const lint_reason_must_be_string_literal: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_reason_must_be_string_literal"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_reason_must_come_last` from `lint`"]
    pub const lint_reason_must_come_last: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_reason_must_come_last"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_redundant_import` from `lint`"]
    pub const lint_redundant_import: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_redundant_import"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_redundant_import.label_imported_here` from `lint`"]
    pub const lint_label_imported_here: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("label_imported_here"));
    #[doc =
    "Constant referring to Fluent message `lint_redundant_import.label_defined_here` from `lint`"]
    pub const lint_label_defined_here: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("label_defined_here"));
    #[doc =
    "Constant referring to Fluent message `lint_redundant_import.label_imported_prelude` from `lint`"]
    pub const lint_label_imported_prelude: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("label_imported_prelude"));
    #[doc =
    "Constant referring to Fluent message `lint_redundant_import.label_defined_prelude` from `lint`"]
    pub const lint_label_defined_prelude: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("label_defined_prelude"));
    #[doc =
    "Constant referring to Fluent message `lint_redundant_semicolons` from `lint`"]
    pub const lint_redundant_semicolons: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_redundant_semicolons"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_redundant_semicolons_suggestion` from `lint`"]
    pub const lint_redundant_semicolons_suggestion: rustc_errors::DiagMessage
        =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_redundant_semicolons_suggestion"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_remove_mut_from_pattern` from `lint`"]
    pub const lint_remove_mut_from_pattern: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_remove_mut_from_pattern"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_removed_lint` from `lint`"]
    pub const lint_removed_lint: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_removed_lint"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_renamed_lint` from `lint`"]
    pub const lint_renamed_lint: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_renamed_lint"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_requested_level` from `lint`"]
    pub const lint_requested_level: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_requested_level"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_reserved_multihash` from `lint`"]
    pub const lint_reserved_multihash: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_reserved_multihash"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_reserved_prefix` from `lint`"]
    pub const lint_reserved_prefix: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_reserved_prefix"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_reserved_string` from `lint`"]
    pub const lint_reserved_string: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_reserved_string"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_shadowed_into_iter` from `lint`"]
    pub const lint_shadowed_into_iter: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_shadowed_into_iter"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_shadowed_into_iter.use_iter_suggestion` from `lint`"]
    pub const lint_use_iter_suggestion: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("use_iter_suggestion"));
    #[doc =
    "Constant referring to Fluent message `lint_shadowed_into_iter.remove_into_iter_suggestion` from `lint`"]
    pub const lint_remove_into_iter_suggestion: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("remove_into_iter_suggestion"));
    #[doc =
    "Constant referring to Fluent message `lint_shadowed_into_iter.use_explicit_into_iter_suggestion` from `lint`"]
    pub const lint_use_explicit_into_iter_suggestion:
        rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("use_explicit_into_iter_suggestion"));
    #[doc =
    "Constant referring to Fluent message `lint_single_use_lifetime` from `lint`"]
    pub const lint_single_use_lifetime: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_single_use_lifetime"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_single_use_lifetime.label_param` from `lint`"]
    pub const lint_label_param: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("label_param"));
    #[doc =
    "Constant referring to Fluent message `lint_single_use_lifetime.label_use` from `lint`"]
    pub const lint_label_use: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("label_use"));
    #[doc =
    "Constant referring to Fluent message `lint_span_use_eq_ctxt` from `lint`"]
    pub const lint_span_use_eq_ctxt: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_span_use_eq_ctxt"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_static_mut_refs_lint` from `lint`"]
    pub const lint_static_mut_refs_lint: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_static_mut_refs_lint"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_static_mut_refs_lint.suggestion_mut` from `lint`"]
    pub const lint_suggestion_mut: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("suggestion_mut"));
    #[doc =
    "Constant referring to Fluent message `lint_static_mut_refs_lint.shared_note` from `lint`"]
    pub const lint_shared_note: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("shared_note"));
    #[doc =
    "Constant referring to Fluent message `lint_static_mut_refs_lint.mut_note` from `lint`"]
    pub const lint_mut_note: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("mut_note"));
    #[doc =
    "Constant referring to Fluent message `lint_supertrait_as_deref_target` from `lint`"]
    pub const lint_supertrait_as_deref_target: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_supertrait_as_deref_target"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_supertrait_as_deref_target.label2` from `lint`"]
    pub const lint_label2: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("label2"));
    #[doc =
    "Constant referring to Fluent message `lint_surrogate_char_cast` from `lint`"]
    pub const lint_surrogate_char_cast: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_surrogate_char_cast"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_suspicious_double_ref_clone` from `lint`"]
    pub const lint_suspicious_double_ref_clone: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_suspicious_double_ref_clone"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_suspicious_double_ref_deref` from `lint`"]
    pub const lint_suspicious_double_ref_deref: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_suspicious_double_ref_deref"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_symbol_intern_string_literal` from `lint`"]
    pub const lint_symbol_intern_string_literal: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_symbol_intern_string_literal"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_too_large_char_cast` from `lint`"]
    pub const lint_too_large_char_cast: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_too_large_char_cast"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_ty_qualified` from `lint`"]
    pub const lint_ty_qualified: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_ty_qualified"),
            None);
    #[doc = "Constant referring to Fluent message `lint_tykind` from `lint`"]
    pub const lint_tykind: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_tykind"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_tykind_kind` from `lint`"]
    pub const lint_tykind_kind: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_tykind_kind"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_type_ir_direct_use` from `lint`"]
    pub const lint_type_ir_direct_use: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_type_ir_direct_use"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_type_ir_inherent_usage` from `lint`"]
    pub const lint_type_ir_inherent_usage: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_type_ir_inherent_usage"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_type_ir_trait_usage` from `lint`"]
    pub const lint_type_ir_trait_usage: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_type_ir_trait_usage"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_undefined_transmute` from `lint`"]
    pub const lint_undefined_transmute: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_undefined_transmute"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_undropped_manually_drops` from `lint`"]
    pub const lint_undropped_manually_drops: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_undropped_manually_drops"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unexpected_cfg_add_build_rs_println` from `lint`"]
    pub const lint_unexpected_cfg_add_build_rs_println:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unexpected_cfg_add_build_rs_println"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unexpected_cfg_add_cargo_feature` from `lint`"]
    pub const lint_unexpected_cfg_add_cargo_feature: rustc_errors::DiagMessage
        =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unexpected_cfg_add_cargo_feature"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unexpected_cfg_add_cargo_toml_lint_cfg` from `lint`"]
    pub const lint_unexpected_cfg_add_cargo_toml_lint_cfg:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unexpected_cfg_add_cargo_toml_lint_cfg"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unexpected_cfg_add_cmdline_arg` from `lint`"]
    pub const lint_unexpected_cfg_add_cmdline_arg: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unexpected_cfg_add_cmdline_arg"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unexpected_cfg_boolean` from `lint`"]
    pub const lint_unexpected_cfg_boolean: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unexpected_cfg_boolean"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unexpected_cfg_cargo_update` from `lint`"]
    pub const lint_unexpected_cfg_cargo_update: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unexpected_cfg_cargo_update"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unexpected_cfg_define_features` from `lint`"]
    pub const lint_unexpected_cfg_define_features: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unexpected_cfg_define_features"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unexpected_cfg_doc_cargo` from `lint`"]
    pub const lint_unexpected_cfg_doc_cargo: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unexpected_cfg_doc_cargo"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unexpected_cfg_doc_rustc` from `lint`"]
    pub const lint_unexpected_cfg_doc_rustc: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unexpected_cfg_doc_rustc"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unexpected_cfg_from_external_macro_origin` from `lint`"]
    pub const lint_unexpected_cfg_from_external_macro_origin:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unexpected_cfg_from_external_macro_origin"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unexpected_cfg_from_external_macro_refer` from `lint`"]
    pub const lint_unexpected_cfg_from_external_macro_refer:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unexpected_cfg_from_external_macro_refer"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unexpected_cfg_name` from `lint`"]
    pub const lint_unexpected_cfg_name: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unexpected_cfg_name"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unexpected_cfg_name_expected_names` from `lint`"]
    pub const lint_unexpected_cfg_name_expected_names:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unexpected_cfg_name_expected_names"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unexpected_cfg_name_expected_values` from `lint`"]
    pub const lint_unexpected_cfg_name_expected_values:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unexpected_cfg_name_expected_values"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unexpected_cfg_name_similar_name` from `lint`"]
    pub const lint_unexpected_cfg_name_similar_name: rustc_errors::DiagMessage
        =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unexpected_cfg_name_similar_name"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unexpected_cfg_name_similar_name_different_values` from `lint`"]
    pub const lint_unexpected_cfg_name_similar_name_different_values:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unexpected_cfg_name_similar_name_different_values"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unexpected_cfg_name_similar_name_no_value` from `lint`"]
    pub const lint_unexpected_cfg_name_similar_name_no_value:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unexpected_cfg_name_similar_name_no_value"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unexpected_cfg_name_similar_name_value` from `lint`"]
    pub const lint_unexpected_cfg_name_similar_name_value:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unexpected_cfg_name_similar_name_value"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unexpected_cfg_name_version_syntax` from `lint`"]
    pub const lint_unexpected_cfg_name_version_syntax:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unexpected_cfg_name_version_syntax"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unexpected_cfg_name_with_similar_value` from `lint`"]
    pub const lint_unexpected_cfg_name_with_similar_value:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unexpected_cfg_name_with_similar_value"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unexpected_cfg_value` from `lint`"]
    pub const lint_unexpected_cfg_value: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unexpected_cfg_value"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unexpected_cfg_value_add_feature` from `lint`"]
    pub const lint_unexpected_cfg_value_add_feature: rustc_errors::DiagMessage
        =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unexpected_cfg_value_add_feature"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unexpected_cfg_value_expected_values` from `lint`"]
    pub const lint_unexpected_cfg_value_expected_values:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unexpected_cfg_value_expected_values"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unexpected_cfg_value_no_expected_value` from `lint`"]
    pub const lint_unexpected_cfg_value_no_expected_value:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unexpected_cfg_value_no_expected_value"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unexpected_cfg_value_no_expected_values` from `lint`"]
    pub const lint_unexpected_cfg_value_no_expected_values:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unexpected_cfg_value_no_expected_values"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unexpected_cfg_value_remove_condition` from `lint`"]
    pub const lint_unexpected_cfg_value_remove_condition:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unexpected_cfg_value_remove_condition"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unexpected_cfg_value_remove_value` from `lint`"]
    pub const lint_unexpected_cfg_value_remove_value:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unexpected_cfg_value_remove_value"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unexpected_cfg_value_similar_name` from `lint`"]
    pub const lint_unexpected_cfg_value_similar_name:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unexpected_cfg_value_similar_name"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unexpected_cfg_value_specify_value` from `lint`"]
    pub const lint_unexpected_cfg_value_specify_value:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unexpected_cfg_value_specify_value"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_ungated_async_fn_track_caller` from `lint`"]
    pub const lint_ungated_async_fn_track_caller: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_ungated_async_fn_track_caller"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unicode_text_flow` from `lint`"]
    pub const lint_unicode_text_flow: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unicode_text_flow"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unicode_text_flow.label_comment_char` from `lint`"]
    pub const lint_label_comment_char: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("label_comment_char"));
    #[doc =
    "Constant referring to Fluent message `lint_unit_bindings` from `lint`"]
    pub const lint_unit_bindings: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unit_bindings"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unknown_gated_lint` from `lint`"]
    pub const lint_unknown_gated_lint: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unknown_gated_lint"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unknown_lint` from `lint`"]
    pub const lint_unknown_lint: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unknown_lint"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unknown_tool_in_scoped_lint` from `lint`"]
    pub const lint_unknown_tool_in_scoped_lint: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unknown_tool_in_scoped_lint"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unnecessary_qualification` from `lint`"]
    pub const lint_unnecessary_qualification: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unnecessary_qualification"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unpredictable_fn_pointer_comparisons` from `lint`"]
    pub const lint_unpredictable_fn_pointer_comparisons:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unpredictable_fn_pointer_comparisons"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unpredictable_fn_pointer_comparisons.note_duplicated_fn` from `lint`"]
    pub const lint_note_duplicated_fn: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("note_duplicated_fn"));
    #[doc =
    "Constant referring to Fluent message `lint_unpredictable_fn_pointer_comparisons.note_deduplicated_fn` from `lint`"]
    pub const lint_note_deduplicated_fn: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("note_deduplicated_fn"));
    #[doc =
    "Constant referring to Fluent message `lint_unpredictable_fn_pointer_comparisons.note_visit_fn_addr_eq` from `lint`"]
    pub const lint_note_visit_fn_addr_eq: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("note_visit_fn_addr_eq"));
    #[doc =
    "Constant referring to Fluent message `lint_unpredictable_fn_pointer_comparisons.fn_addr_eq_suggestion` from `lint`"]
    pub const lint_fn_addr_eq_suggestion: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("fn_addr_eq_suggestion"));
    #[doc =
    "Constant referring to Fluent message `lint_unqualified_local_imports` from `lint`"]
    pub const lint_unqualified_local_imports: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unqualified_local_imports"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unsafe_attr_outside_unsafe` from `lint`"]
    pub const lint_unsafe_attr_outside_unsafe: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unsafe_attr_outside_unsafe"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unsafe_attr_outside_unsafe_suggestion` from `lint`"]
    pub const lint_unsafe_attr_outside_unsafe_suggestion:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unsafe_attr_outside_unsafe_suggestion"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unsupported_group` from `lint`"]
    pub const lint_unsupported_group: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unsupported_group"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unused_allocation` from `lint`"]
    pub const lint_unused_allocation: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unused_allocation"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unused_allocation_mut` from `lint`"]
    pub const lint_unused_allocation_mut: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unused_allocation_mut"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unused_closure` from `lint`"]
    pub const lint_unused_closure: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unused_closure"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unused_comparisons` from `lint`"]
    pub const lint_unused_comparisons: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unused_comparisons"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unused_coroutine` from `lint`"]
    pub const lint_unused_coroutine: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unused_coroutine"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unused_crate_dependency` from `lint`"]
    pub const lint_unused_crate_dependency: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unused_crate_dependency"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unused_def` from `lint`"]
    pub const lint_unused_def: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unused_def"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unused_delim` from `lint`"]
    pub const lint_unused_delim: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unused_delim"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unused_duplicate` from `lint`"]
    pub const lint_unused_duplicate: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unused_duplicate"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unused_import_braces` from `lint`"]
    pub const lint_unused_import_braces: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unused_import_braces"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unused_imports` from `lint`"]
    pub const lint_unused_imports: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unused_imports"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unused_imports.suggestion_remove_whole_use` from `lint`"]
    pub const lint_suggestion_remove_whole_use: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("suggestion_remove_whole_use"));
    #[doc =
    "Constant referring to Fluent message `lint_unused_imports.suggestion_remove_imports` from `lint`"]
    pub const lint_suggestion_remove_imports: rustc_errors::SubdiagMessage =
        rustc_errors::SubdiagMessage::FluentAttr(std::borrow::Cow::Borrowed("suggestion_remove_imports"));
    #[doc =
    "Constant referring to Fluent message `lint_unused_lifetime` from `lint`"]
    pub const lint_unused_lifetime: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unused_lifetime"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unused_op` from `lint`"]
    pub const lint_unused_op: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unused_op"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unused_result` from `lint`"]
    pub const lint_unused_result: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unused_result"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_unused_visibilities` from `lint`"]
    pub const lint_unused_visibilities: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_unused_visibilities"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_use_let_underscore_ignore_suggestion` from `lint`"]
    pub const lint_use_let_underscore_ignore_suggestion:
        rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_use_let_underscore_ignore_suggestion"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_useless_ptr_null_checks_fn_ptr` from `lint`"]
    pub const lint_useless_ptr_null_checks_fn_ptr: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_useless_ptr_null_checks_fn_ptr"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_useless_ptr_null_checks_fn_ret` from `lint`"]
    pub const lint_useless_ptr_null_checks_fn_ret: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_useless_ptr_null_checks_fn_ret"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_useless_ptr_null_checks_ref` from `lint`"]
    pub const lint_useless_ptr_null_checks_ref: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_useless_ptr_null_checks_ref"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_uses_power_alignment` from `lint`"]
    pub const lint_uses_power_alignment: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_uses_power_alignment"),
            None);
    #[doc =
    "Constant referring to Fluent message `lint_variant_size_differences` from `lint`"]
    pub const lint_variant_size_differences: rustc_errors::DiagMessage =
        rustc_errors::DiagMessage::FluentIdentifier(std::borrow::Cow::Borrowed("lint_variant_size_differences"),
            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" }
143
144pub fn provide(providers: &mut Providers) {
145    levels::provide(providers);
146    expect::provide(providers);
147    foreign_modules::provide(providers);
148    *providers = Providers { lint_mod, ..*providers };
149}
150
151fn lint_mod(tcx: TyCtxt<'_>, module_def_id: LocalModDefId) {
152    late_lint_mod(tcx, module_def_id, BuiltinCombinedModuleLateLintPass::new());
153}
154
155#[allow(non_snake_case)]
pub struct BuiltinCombinedPreExpansionLintPass {
    KeywordIdents: KeywordIdents,
}
impl BuiltinCombinedPreExpansionLintPass {
    pub fn new() -> Self { Self { KeywordIdents: KeywordIdents } }
    pub fn get_lints() -> crate::LintVec {
        let mut lints = Vec::new();
        lints.extend_from_slice(&KeywordIdents::lint_vec());
        lints
    }
}
impl crate::EarlyLintPass for BuiltinCombinedPreExpansionLintPass {
    fn check_param(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::Param) {
        { self.KeywordIdents.check_param(context, a); };
    }
    fn check_ident(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_span::Ident) {
        { self.KeywordIdents.check_ident(context, a); };
    }
    fn check_crate(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::Crate) {
        { self.KeywordIdents.check_crate(context, a); };
    }
    fn check_crate_post(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::Crate) {
        { self.KeywordIdents.check_crate_post(context, a); };
    }
    fn check_item(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::Item) {
        { self.KeywordIdents.check_item(context, a); };
    }
    fn check_item_post(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::Item) {
        { self.KeywordIdents.check_item_post(context, a); };
    }
    fn check_local(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::Local) {
        { self.KeywordIdents.check_local(context, a); };
    }
    fn check_block(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::Block) {
        { self.KeywordIdents.check_block(context, a); };
    }
    fn check_stmt(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::Stmt) {
        { self.KeywordIdents.check_stmt(context, a); };
    }
    fn check_arm(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::Arm) {
        { self.KeywordIdents.check_arm(context, a); };
    }
    fn check_pat(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::Pat) {
        { self.KeywordIdents.check_pat(context, a); };
    }
    fn check_pat_post(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::Pat) {
        { self.KeywordIdents.check_pat_post(context, a); };
    }
    fn check_expr(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::Expr) {
        { self.KeywordIdents.check_expr(context, a); };
    }
    fn check_expr_post(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::Expr) {
        { self.KeywordIdents.check_expr_post(context, a); };
    }
    fn check_ty(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::Ty) {
        { self.KeywordIdents.check_ty(context, a); };
    }
    fn check_generic_arg(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::GenericArg) {
        { self.KeywordIdents.check_generic_arg(context, a); };
    }
    fn check_generic_param(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::GenericParam) {
        { self.KeywordIdents.check_generic_param(context, a); };
    }
    fn check_generics(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::Generics) {
        { self.KeywordIdents.check_generics(context, a); };
    }
    fn check_poly_trait_ref(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::PolyTraitRef) {
        { self.KeywordIdents.check_poly_trait_ref(context, a); };
    }
    fn check_fn(&mut self, context: &crate::EarlyContext<'_>,
        a: rustc_ast::visit::FnKind<'_>, c: rustc_span::Span,
        d_: rustc_ast::NodeId) {
        { self.KeywordIdents.check_fn(context, a, c, d_); };
    }
    fn check_trait_item(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::AssocItem) {
        { self.KeywordIdents.check_trait_item(context, a); };
    }
    fn check_trait_item_post(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::AssocItem) {
        { self.KeywordIdents.check_trait_item_post(context, a); };
    }
    fn check_impl_item(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::AssocItem) {
        { self.KeywordIdents.check_impl_item(context, a); };
    }
    fn check_impl_item_post(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::AssocItem) {
        { self.KeywordIdents.check_impl_item_post(context, a); };
    }
    fn check_variant(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::Variant) {
        { self.KeywordIdents.check_variant(context, a); };
    }
    fn check_attribute(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::Attribute) {
        { self.KeywordIdents.check_attribute(context, a); };
    }
    fn check_attributes(&mut self, context: &crate::EarlyContext<'_>,
        a: &[rustc_ast::Attribute]) {
        { self.KeywordIdents.check_attributes(context, a); };
    }
    fn check_attributes_post(&mut self, context: &crate::EarlyContext<'_>,
        a: &[rustc_ast::Attribute]) {
        { self.KeywordIdents.check_attributes_post(context, a); };
    }
    fn check_mac_def(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::MacroDef) {
        { self.KeywordIdents.check_mac_def(context, a); };
    }
    fn check_mac(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::MacCall) {
        { self.KeywordIdents.check_mac(context, a); };
    }
    fn enter_where_predicate(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::WherePredicate) {
        { self.KeywordIdents.enter_where_predicate(context, a); };
    }
    fn exit_where_predicate(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::WherePredicate) {
        { self.KeywordIdents.exit_where_predicate(context, a); };
    }
}
#[allow(rustc :: lint_pass_impl_without_macro)]
impl crate::LintPass for BuiltinCombinedPreExpansionLintPass {
    fn name(&self) -> &'static str {
        ::core::panicking::panic("explicit panic")
    }
    fn get_lints(&self) -> LintVec {
        ::core::panicking::panic("explicit panic")
    }
}early_lint_methods!(
156    declare_combined_early_lint_pass,
157    [
158        pub BuiltinCombinedPreExpansionLintPass,
159        [
160            KeywordIdents: KeywordIdents,
161        ]
162    ]
163);
164
165#[allow(non_snake_case)]
pub struct BuiltinCombinedEarlyLintPass {
    UnusedParens: UnusedParens,
    UnusedBraces: UnusedBraces,
    UnusedImportBraces: UnusedImportBraces,
    UnsafeCode: UnsafeCode,
    SpecialModuleName: SpecialModuleName,
    AnonymousParameters: AnonymousParameters,
    EllipsisInclusiveRangePatterns: EllipsisInclusiveRangePatterns,
    NonCamelCaseTypes: NonCamelCaseTypes,
    WhileTrue: WhileTrue,
    NonAsciiIdents: NonAsciiIdents,
    IncompleteInternalFeatures: IncompleteInternalFeatures,
    RedundantSemicolons: RedundantSemicolons,
    UnusedDocComment: UnusedDocComment,
    Expr2024: Expr2024,
    Precedence: Precedence,
    DoubleNegations: DoubleNegations,
}
impl BuiltinCombinedEarlyLintPass {
    pub fn new() -> Self {
        Self {
            UnusedParens: UnusedParens::default(),
            UnusedBraces: UnusedBraces,
            UnusedImportBraces: UnusedImportBraces,
            UnsafeCode: UnsafeCode,
            SpecialModuleName: SpecialModuleName,
            AnonymousParameters: AnonymousParameters,
            EllipsisInclusiveRangePatterns: EllipsisInclusiveRangePatterns::default(),
            NonCamelCaseTypes: NonCamelCaseTypes,
            WhileTrue: WhileTrue,
            NonAsciiIdents: NonAsciiIdents,
            IncompleteInternalFeatures: IncompleteInternalFeatures,
            RedundantSemicolons: RedundantSemicolons,
            UnusedDocComment: UnusedDocComment,
            Expr2024: Expr2024,
            Precedence: Precedence,
            DoubleNegations: DoubleNegations,
        }
    }
    pub fn get_lints() -> crate::LintVec {
        let mut lints = Vec::new();
        lints.extend_from_slice(&UnusedParens::lint_vec());
        lints.extend_from_slice(&UnusedBraces::lint_vec());
        lints.extend_from_slice(&UnusedImportBraces::lint_vec());
        lints.extend_from_slice(&UnsafeCode::lint_vec());
        lints.extend_from_slice(&SpecialModuleName::lint_vec());
        lints.extend_from_slice(&AnonymousParameters::lint_vec());
        lints.extend_from_slice(&EllipsisInclusiveRangePatterns::lint_vec());
        lints.extend_from_slice(&NonCamelCaseTypes::lint_vec());
        lints.extend_from_slice(&WhileTrue::lint_vec());
        lints.extend_from_slice(&NonAsciiIdents::lint_vec());
        lints.extend_from_slice(&IncompleteInternalFeatures::lint_vec());
        lints.extend_from_slice(&RedundantSemicolons::lint_vec());
        lints.extend_from_slice(&UnusedDocComment::lint_vec());
        lints.extend_from_slice(&Expr2024::lint_vec());
        lints.extend_from_slice(&Precedence::lint_vec());
        lints.extend_from_slice(&DoubleNegations::lint_vec());
        lints
    }
}
impl crate::EarlyLintPass for BuiltinCombinedEarlyLintPass {
    fn check_param(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::Param) {
        {
            self.UnusedParens.check_param(context, a);
            self.UnusedBraces.check_param(context, a);
            self.UnusedImportBraces.check_param(context, a);
            self.UnsafeCode.check_param(context, a);
            self.SpecialModuleName.check_param(context, a);
            self.AnonymousParameters.check_param(context, a);
            self.EllipsisInclusiveRangePatterns.check_param(context, a);
            self.NonCamelCaseTypes.check_param(context, a);
            self.WhileTrue.check_param(context, a);
            self.NonAsciiIdents.check_param(context, a);
            self.IncompleteInternalFeatures.check_param(context, a);
            self.RedundantSemicolons.check_param(context, a);
            self.UnusedDocComment.check_param(context, a);
            self.Expr2024.check_param(context, a);
            self.Precedence.check_param(context, a);
            self.DoubleNegations.check_param(context, a);
        };
    }
    fn check_ident(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_span::Ident) {
        {
            self.UnusedParens.check_ident(context, a);
            self.UnusedBraces.check_ident(context, a);
            self.UnusedImportBraces.check_ident(context, a);
            self.UnsafeCode.check_ident(context, a);
            self.SpecialModuleName.check_ident(context, a);
            self.AnonymousParameters.check_ident(context, a);
            self.EllipsisInclusiveRangePatterns.check_ident(context, a);
            self.NonCamelCaseTypes.check_ident(context, a);
            self.WhileTrue.check_ident(context, a);
            self.NonAsciiIdents.check_ident(context, a);
            self.IncompleteInternalFeatures.check_ident(context, a);
            self.RedundantSemicolons.check_ident(context, a);
            self.UnusedDocComment.check_ident(context, a);
            self.Expr2024.check_ident(context, a);
            self.Precedence.check_ident(context, a);
            self.DoubleNegations.check_ident(context, a);
        };
    }
    fn check_crate(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::Crate) {
        {
            self.UnusedParens.check_crate(context, a);
            self.UnusedBraces.check_crate(context, a);
            self.UnusedImportBraces.check_crate(context, a);
            self.UnsafeCode.check_crate(context, a);
            self.SpecialModuleName.check_crate(context, a);
            self.AnonymousParameters.check_crate(context, a);
            self.EllipsisInclusiveRangePatterns.check_crate(context, a);
            self.NonCamelCaseTypes.check_crate(context, a);
            self.WhileTrue.check_crate(context, a);
            self.NonAsciiIdents.check_crate(context, a);
            self.IncompleteInternalFeatures.check_crate(context, a);
            self.RedundantSemicolons.check_crate(context, a);
            self.UnusedDocComment.check_crate(context, a);
            self.Expr2024.check_crate(context, a);
            self.Precedence.check_crate(context, a);
            self.DoubleNegations.check_crate(context, a);
        };
    }
    fn check_crate_post(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::Crate) {
        {
            self.UnusedParens.check_crate_post(context, a);
            self.UnusedBraces.check_crate_post(context, a);
            self.UnusedImportBraces.check_crate_post(context, a);
            self.UnsafeCode.check_crate_post(context, a);
            self.SpecialModuleName.check_crate_post(context, a);
            self.AnonymousParameters.check_crate_post(context, a);
            self.EllipsisInclusiveRangePatterns.check_crate_post(context, a);
            self.NonCamelCaseTypes.check_crate_post(context, a);
            self.WhileTrue.check_crate_post(context, a);
            self.NonAsciiIdents.check_crate_post(context, a);
            self.IncompleteInternalFeatures.check_crate_post(context, a);
            self.RedundantSemicolons.check_crate_post(context, a);
            self.UnusedDocComment.check_crate_post(context, a);
            self.Expr2024.check_crate_post(context, a);
            self.Precedence.check_crate_post(context, a);
            self.DoubleNegations.check_crate_post(context, a);
        };
    }
    fn check_item(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::Item) {
        {
            self.UnusedParens.check_item(context, a);
            self.UnusedBraces.check_item(context, a);
            self.UnusedImportBraces.check_item(context, a);
            self.UnsafeCode.check_item(context, a);
            self.SpecialModuleName.check_item(context, a);
            self.AnonymousParameters.check_item(context, a);
            self.EllipsisInclusiveRangePatterns.check_item(context, a);
            self.NonCamelCaseTypes.check_item(context, a);
            self.WhileTrue.check_item(context, a);
            self.NonAsciiIdents.check_item(context, a);
            self.IncompleteInternalFeatures.check_item(context, a);
            self.RedundantSemicolons.check_item(context, a);
            self.UnusedDocComment.check_item(context, a);
            self.Expr2024.check_item(context, a);
            self.Precedence.check_item(context, a);
            self.DoubleNegations.check_item(context, a);
        };
    }
    fn check_item_post(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::Item) {
        {
            self.UnusedParens.check_item_post(context, a);
            self.UnusedBraces.check_item_post(context, a);
            self.UnusedImportBraces.check_item_post(context, a);
            self.UnsafeCode.check_item_post(context, a);
            self.SpecialModuleName.check_item_post(context, a);
            self.AnonymousParameters.check_item_post(context, a);
            self.EllipsisInclusiveRangePatterns.check_item_post(context, a);
            self.NonCamelCaseTypes.check_item_post(context, a);
            self.WhileTrue.check_item_post(context, a);
            self.NonAsciiIdents.check_item_post(context, a);
            self.IncompleteInternalFeatures.check_item_post(context, a);
            self.RedundantSemicolons.check_item_post(context, a);
            self.UnusedDocComment.check_item_post(context, a);
            self.Expr2024.check_item_post(context, a);
            self.Precedence.check_item_post(context, a);
            self.DoubleNegations.check_item_post(context, a);
        };
    }
    fn check_local(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::Local) {
        {
            self.UnusedParens.check_local(context, a);
            self.UnusedBraces.check_local(context, a);
            self.UnusedImportBraces.check_local(context, a);
            self.UnsafeCode.check_local(context, a);
            self.SpecialModuleName.check_local(context, a);
            self.AnonymousParameters.check_local(context, a);
            self.EllipsisInclusiveRangePatterns.check_local(context, a);
            self.NonCamelCaseTypes.check_local(context, a);
            self.WhileTrue.check_local(context, a);
            self.NonAsciiIdents.check_local(context, a);
            self.IncompleteInternalFeatures.check_local(context, a);
            self.RedundantSemicolons.check_local(context, a);
            self.UnusedDocComment.check_local(context, a);
            self.Expr2024.check_local(context, a);
            self.Precedence.check_local(context, a);
            self.DoubleNegations.check_local(context, a);
        };
    }
    fn check_block(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::Block) {
        {
            self.UnusedParens.check_block(context, a);
            self.UnusedBraces.check_block(context, a);
            self.UnusedImportBraces.check_block(context, a);
            self.UnsafeCode.check_block(context, a);
            self.SpecialModuleName.check_block(context, a);
            self.AnonymousParameters.check_block(context, a);
            self.EllipsisInclusiveRangePatterns.check_block(context, a);
            self.NonCamelCaseTypes.check_block(context, a);
            self.WhileTrue.check_block(context, a);
            self.NonAsciiIdents.check_block(context, a);
            self.IncompleteInternalFeatures.check_block(context, a);
            self.RedundantSemicolons.check_block(context, a);
            self.UnusedDocComment.check_block(context, a);
            self.Expr2024.check_block(context, a);
            self.Precedence.check_block(context, a);
            self.DoubleNegations.check_block(context, a);
        };
    }
    fn check_stmt(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::Stmt) {
        {
            self.UnusedParens.check_stmt(context, a);
            self.UnusedBraces.check_stmt(context, a);
            self.UnusedImportBraces.check_stmt(context, a);
            self.UnsafeCode.check_stmt(context, a);
            self.SpecialModuleName.check_stmt(context, a);
            self.AnonymousParameters.check_stmt(context, a);
            self.EllipsisInclusiveRangePatterns.check_stmt(context, a);
            self.NonCamelCaseTypes.check_stmt(context, a);
            self.WhileTrue.check_stmt(context, a);
            self.NonAsciiIdents.check_stmt(context, a);
            self.IncompleteInternalFeatures.check_stmt(context, a);
            self.RedundantSemicolons.check_stmt(context, a);
            self.UnusedDocComment.check_stmt(context, a);
            self.Expr2024.check_stmt(context, a);
            self.Precedence.check_stmt(context, a);
            self.DoubleNegations.check_stmt(context, a);
        };
    }
    fn check_arm(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::Arm) {
        {
            self.UnusedParens.check_arm(context, a);
            self.UnusedBraces.check_arm(context, a);
            self.UnusedImportBraces.check_arm(context, a);
            self.UnsafeCode.check_arm(context, a);
            self.SpecialModuleName.check_arm(context, a);
            self.AnonymousParameters.check_arm(context, a);
            self.EllipsisInclusiveRangePatterns.check_arm(context, a);
            self.NonCamelCaseTypes.check_arm(context, a);
            self.WhileTrue.check_arm(context, a);
            self.NonAsciiIdents.check_arm(context, a);
            self.IncompleteInternalFeatures.check_arm(context, a);
            self.RedundantSemicolons.check_arm(context, a);
            self.UnusedDocComment.check_arm(context, a);
            self.Expr2024.check_arm(context, a);
            self.Precedence.check_arm(context, a);
            self.DoubleNegations.check_arm(context, a);
        };
    }
    fn check_pat(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::Pat) {
        {
            self.UnusedParens.check_pat(context, a);
            self.UnusedBraces.check_pat(context, a);
            self.UnusedImportBraces.check_pat(context, a);
            self.UnsafeCode.check_pat(context, a);
            self.SpecialModuleName.check_pat(context, a);
            self.AnonymousParameters.check_pat(context, a);
            self.EllipsisInclusiveRangePatterns.check_pat(context, a);
            self.NonCamelCaseTypes.check_pat(context, a);
            self.WhileTrue.check_pat(context, a);
            self.NonAsciiIdents.check_pat(context, a);
            self.IncompleteInternalFeatures.check_pat(context, a);
            self.RedundantSemicolons.check_pat(context, a);
            self.UnusedDocComment.check_pat(context, a);
            self.Expr2024.check_pat(context, a);
            self.Precedence.check_pat(context, a);
            self.DoubleNegations.check_pat(context, a);
        };
    }
    fn check_pat_post(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::Pat) {
        {
            self.UnusedParens.check_pat_post(context, a);
            self.UnusedBraces.check_pat_post(context, a);
            self.UnusedImportBraces.check_pat_post(context, a);
            self.UnsafeCode.check_pat_post(context, a);
            self.SpecialModuleName.check_pat_post(context, a);
            self.AnonymousParameters.check_pat_post(context, a);
            self.EllipsisInclusiveRangePatterns.check_pat_post(context, a);
            self.NonCamelCaseTypes.check_pat_post(context, a);
            self.WhileTrue.check_pat_post(context, a);
            self.NonAsciiIdents.check_pat_post(context, a);
            self.IncompleteInternalFeatures.check_pat_post(context, a);
            self.RedundantSemicolons.check_pat_post(context, a);
            self.UnusedDocComment.check_pat_post(context, a);
            self.Expr2024.check_pat_post(context, a);
            self.Precedence.check_pat_post(context, a);
            self.DoubleNegations.check_pat_post(context, a);
        };
    }
    fn check_expr(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::Expr) {
        {
            self.UnusedParens.check_expr(context, a);
            self.UnusedBraces.check_expr(context, a);
            self.UnusedImportBraces.check_expr(context, a);
            self.UnsafeCode.check_expr(context, a);
            self.SpecialModuleName.check_expr(context, a);
            self.AnonymousParameters.check_expr(context, a);
            self.EllipsisInclusiveRangePatterns.check_expr(context, a);
            self.NonCamelCaseTypes.check_expr(context, a);
            self.WhileTrue.check_expr(context, a);
            self.NonAsciiIdents.check_expr(context, a);
            self.IncompleteInternalFeatures.check_expr(context, a);
            self.RedundantSemicolons.check_expr(context, a);
            self.UnusedDocComment.check_expr(context, a);
            self.Expr2024.check_expr(context, a);
            self.Precedence.check_expr(context, a);
            self.DoubleNegations.check_expr(context, a);
        };
    }
    fn check_expr_post(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::Expr) {
        {
            self.UnusedParens.check_expr_post(context, a);
            self.UnusedBraces.check_expr_post(context, a);
            self.UnusedImportBraces.check_expr_post(context, a);
            self.UnsafeCode.check_expr_post(context, a);
            self.SpecialModuleName.check_expr_post(context, a);
            self.AnonymousParameters.check_expr_post(context, a);
            self.EllipsisInclusiveRangePatterns.check_expr_post(context, a);
            self.NonCamelCaseTypes.check_expr_post(context, a);
            self.WhileTrue.check_expr_post(context, a);
            self.NonAsciiIdents.check_expr_post(context, a);
            self.IncompleteInternalFeatures.check_expr_post(context, a);
            self.RedundantSemicolons.check_expr_post(context, a);
            self.UnusedDocComment.check_expr_post(context, a);
            self.Expr2024.check_expr_post(context, a);
            self.Precedence.check_expr_post(context, a);
            self.DoubleNegations.check_expr_post(context, a);
        };
    }
    fn check_ty(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::Ty) {
        {
            self.UnusedParens.check_ty(context, a);
            self.UnusedBraces.check_ty(context, a);
            self.UnusedImportBraces.check_ty(context, a);
            self.UnsafeCode.check_ty(context, a);
            self.SpecialModuleName.check_ty(context, a);
            self.AnonymousParameters.check_ty(context, a);
            self.EllipsisInclusiveRangePatterns.check_ty(context, a);
            self.NonCamelCaseTypes.check_ty(context, a);
            self.WhileTrue.check_ty(context, a);
            self.NonAsciiIdents.check_ty(context, a);
            self.IncompleteInternalFeatures.check_ty(context, a);
            self.RedundantSemicolons.check_ty(context, a);
            self.UnusedDocComment.check_ty(context, a);
            self.Expr2024.check_ty(context, a);
            self.Precedence.check_ty(context, a);
            self.DoubleNegations.check_ty(context, a);
        };
    }
    fn check_generic_arg(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::GenericArg) {
        {
            self.UnusedParens.check_generic_arg(context, a);
            self.UnusedBraces.check_generic_arg(context, a);
            self.UnusedImportBraces.check_generic_arg(context, a);
            self.UnsafeCode.check_generic_arg(context, a);
            self.SpecialModuleName.check_generic_arg(context, a);
            self.AnonymousParameters.check_generic_arg(context, a);
            self.EllipsisInclusiveRangePatterns.check_generic_arg(context, a);
            self.NonCamelCaseTypes.check_generic_arg(context, a);
            self.WhileTrue.check_generic_arg(context, a);
            self.NonAsciiIdents.check_generic_arg(context, a);
            self.IncompleteInternalFeatures.check_generic_arg(context, a);
            self.RedundantSemicolons.check_generic_arg(context, a);
            self.UnusedDocComment.check_generic_arg(context, a);
            self.Expr2024.check_generic_arg(context, a);
            self.Precedence.check_generic_arg(context, a);
            self.DoubleNegations.check_generic_arg(context, a);
        };
    }
    fn check_generic_param(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::GenericParam) {
        {
            self.UnusedParens.check_generic_param(context, a);
            self.UnusedBraces.check_generic_param(context, a);
            self.UnusedImportBraces.check_generic_param(context, a);
            self.UnsafeCode.check_generic_param(context, a);
            self.SpecialModuleName.check_generic_param(context, a);
            self.AnonymousParameters.check_generic_param(context, a);
            self.EllipsisInclusiveRangePatterns.check_generic_param(context,
                a);
            self.NonCamelCaseTypes.check_generic_param(context, a);
            self.WhileTrue.check_generic_param(context, a);
            self.NonAsciiIdents.check_generic_param(context, a);
            self.IncompleteInternalFeatures.check_generic_param(context, a);
            self.RedundantSemicolons.check_generic_param(context, a);
            self.UnusedDocComment.check_generic_param(context, a);
            self.Expr2024.check_generic_param(context, a);
            self.Precedence.check_generic_param(context, a);
            self.DoubleNegations.check_generic_param(context, a);
        };
    }
    fn check_generics(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::Generics) {
        {
            self.UnusedParens.check_generics(context, a);
            self.UnusedBraces.check_generics(context, a);
            self.UnusedImportBraces.check_generics(context, a);
            self.UnsafeCode.check_generics(context, a);
            self.SpecialModuleName.check_generics(context, a);
            self.AnonymousParameters.check_generics(context, a);
            self.EllipsisInclusiveRangePatterns.check_generics(context, a);
            self.NonCamelCaseTypes.check_generics(context, a);
            self.WhileTrue.check_generics(context, a);
            self.NonAsciiIdents.check_generics(context, a);
            self.IncompleteInternalFeatures.check_generics(context, a);
            self.RedundantSemicolons.check_generics(context, a);
            self.UnusedDocComment.check_generics(context, a);
            self.Expr2024.check_generics(context, a);
            self.Precedence.check_generics(context, a);
            self.DoubleNegations.check_generics(context, a);
        };
    }
    fn check_poly_trait_ref(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::PolyTraitRef) {
        {
            self.UnusedParens.check_poly_trait_ref(context, a);
            self.UnusedBraces.check_poly_trait_ref(context, a);
            self.UnusedImportBraces.check_poly_trait_ref(context, a);
            self.UnsafeCode.check_poly_trait_ref(context, a);
            self.SpecialModuleName.check_poly_trait_ref(context, a);
            self.AnonymousParameters.check_poly_trait_ref(context, a);
            self.EllipsisInclusiveRangePatterns.check_poly_trait_ref(context,
                a);
            self.NonCamelCaseTypes.check_poly_trait_ref(context, a);
            self.WhileTrue.check_poly_trait_ref(context, a);
            self.NonAsciiIdents.check_poly_trait_ref(context, a);
            self.IncompleteInternalFeatures.check_poly_trait_ref(context, a);
            self.RedundantSemicolons.check_poly_trait_ref(context, a);
            self.UnusedDocComment.check_poly_trait_ref(context, a);
            self.Expr2024.check_poly_trait_ref(context, a);
            self.Precedence.check_poly_trait_ref(context, a);
            self.DoubleNegations.check_poly_trait_ref(context, a);
        };
    }
    fn check_fn(&mut self, context: &crate::EarlyContext<'_>,
        a: rustc_ast::visit::FnKind<'_>, c: rustc_span::Span,
        d_: rustc_ast::NodeId) {
        {
            self.UnusedParens.check_fn(context, a, c, d_);
            self.UnusedBraces.check_fn(context, a, c, d_);
            self.UnusedImportBraces.check_fn(context, a, c, d_);
            self.UnsafeCode.check_fn(context, a, c, d_);
            self.SpecialModuleName.check_fn(context, a, c, d_);
            self.AnonymousParameters.check_fn(context, a, c, d_);
            self.EllipsisInclusiveRangePatterns.check_fn(context, a, c, d_);
            self.NonCamelCaseTypes.check_fn(context, a, c, d_);
            self.WhileTrue.check_fn(context, a, c, d_);
            self.NonAsciiIdents.check_fn(context, a, c, d_);
            self.IncompleteInternalFeatures.check_fn(context, a, c, d_);
            self.RedundantSemicolons.check_fn(context, a, c, d_);
            self.UnusedDocComment.check_fn(context, a, c, d_);
            self.Expr2024.check_fn(context, a, c, d_);
            self.Precedence.check_fn(context, a, c, d_);
            self.DoubleNegations.check_fn(context, a, c, d_);
        };
    }
    fn check_trait_item(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::AssocItem) {
        {
            self.UnusedParens.check_trait_item(context, a);
            self.UnusedBraces.check_trait_item(context, a);
            self.UnusedImportBraces.check_trait_item(context, a);
            self.UnsafeCode.check_trait_item(context, a);
            self.SpecialModuleName.check_trait_item(context, a);
            self.AnonymousParameters.check_trait_item(context, a);
            self.EllipsisInclusiveRangePatterns.check_trait_item(context, a);
            self.NonCamelCaseTypes.check_trait_item(context, a);
            self.WhileTrue.check_trait_item(context, a);
            self.NonAsciiIdents.check_trait_item(context, a);
            self.IncompleteInternalFeatures.check_trait_item(context, a);
            self.RedundantSemicolons.check_trait_item(context, a);
            self.UnusedDocComment.check_trait_item(context, a);
            self.Expr2024.check_trait_item(context, a);
            self.Precedence.check_trait_item(context, a);
            self.DoubleNegations.check_trait_item(context, a);
        };
    }
    fn check_trait_item_post(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::AssocItem) {
        {
            self.UnusedParens.check_trait_item_post(context, a);
            self.UnusedBraces.check_trait_item_post(context, a);
            self.UnusedImportBraces.check_trait_item_post(context, a);
            self.UnsafeCode.check_trait_item_post(context, a);
            self.SpecialModuleName.check_trait_item_post(context, a);
            self.AnonymousParameters.check_trait_item_post(context, a);
            self.EllipsisInclusiveRangePatterns.check_trait_item_post(context,
                a);
            self.NonCamelCaseTypes.check_trait_item_post(context, a);
            self.WhileTrue.check_trait_item_post(context, a);
            self.NonAsciiIdents.check_trait_item_post(context, a);
            self.IncompleteInternalFeatures.check_trait_item_post(context, a);
            self.RedundantSemicolons.check_trait_item_post(context, a);
            self.UnusedDocComment.check_trait_item_post(context, a);
            self.Expr2024.check_trait_item_post(context, a);
            self.Precedence.check_trait_item_post(context, a);
            self.DoubleNegations.check_trait_item_post(context, a);
        };
    }
    fn check_impl_item(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::AssocItem) {
        {
            self.UnusedParens.check_impl_item(context, a);
            self.UnusedBraces.check_impl_item(context, a);
            self.UnusedImportBraces.check_impl_item(context, a);
            self.UnsafeCode.check_impl_item(context, a);
            self.SpecialModuleName.check_impl_item(context, a);
            self.AnonymousParameters.check_impl_item(context, a);
            self.EllipsisInclusiveRangePatterns.check_impl_item(context, a);
            self.NonCamelCaseTypes.check_impl_item(context, a);
            self.WhileTrue.check_impl_item(context, a);
            self.NonAsciiIdents.check_impl_item(context, a);
            self.IncompleteInternalFeatures.check_impl_item(context, a);
            self.RedundantSemicolons.check_impl_item(context, a);
            self.UnusedDocComment.check_impl_item(context, a);
            self.Expr2024.check_impl_item(context, a);
            self.Precedence.check_impl_item(context, a);
            self.DoubleNegations.check_impl_item(context, a);
        };
    }
    fn check_impl_item_post(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::AssocItem) {
        {
            self.UnusedParens.check_impl_item_post(context, a);
            self.UnusedBraces.check_impl_item_post(context, a);
            self.UnusedImportBraces.check_impl_item_post(context, a);
            self.UnsafeCode.check_impl_item_post(context, a);
            self.SpecialModuleName.check_impl_item_post(context, a);
            self.AnonymousParameters.check_impl_item_post(context, a);
            self.EllipsisInclusiveRangePatterns.check_impl_item_post(context,
                a);
            self.NonCamelCaseTypes.check_impl_item_post(context, a);
            self.WhileTrue.check_impl_item_post(context, a);
            self.NonAsciiIdents.check_impl_item_post(context, a);
            self.IncompleteInternalFeatures.check_impl_item_post(context, a);
            self.RedundantSemicolons.check_impl_item_post(context, a);
            self.UnusedDocComment.check_impl_item_post(context, a);
            self.Expr2024.check_impl_item_post(context, a);
            self.Precedence.check_impl_item_post(context, a);
            self.DoubleNegations.check_impl_item_post(context, a);
        };
    }
    fn check_variant(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::Variant) {
        {
            self.UnusedParens.check_variant(context, a);
            self.UnusedBraces.check_variant(context, a);
            self.UnusedImportBraces.check_variant(context, a);
            self.UnsafeCode.check_variant(context, a);
            self.SpecialModuleName.check_variant(context, a);
            self.AnonymousParameters.check_variant(context, a);
            self.EllipsisInclusiveRangePatterns.check_variant(context, a);
            self.NonCamelCaseTypes.check_variant(context, a);
            self.WhileTrue.check_variant(context, a);
            self.NonAsciiIdents.check_variant(context, a);
            self.IncompleteInternalFeatures.check_variant(context, a);
            self.RedundantSemicolons.check_variant(context, a);
            self.UnusedDocComment.check_variant(context, a);
            self.Expr2024.check_variant(context, a);
            self.Precedence.check_variant(context, a);
            self.DoubleNegations.check_variant(context, a);
        };
    }
    fn check_attribute(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::Attribute) {
        {
            self.UnusedParens.check_attribute(context, a);
            self.UnusedBraces.check_attribute(context, a);
            self.UnusedImportBraces.check_attribute(context, a);
            self.UnsafeCode.check_attribute(context, a);
            self.SpecialModuleName.check_attribute(context, a);
            self.AnonymousParameters.check_attribute(context, a);
            self.EllipsisInclusiveRangePatterns.check_attribute(context, a);
            self.NonCamelCaseTypes.check_attribute(context, a);
            self.WhileTrue.check_attribute(context, a);
            self.NonAsciiIdents.check_attribute(context, a);
            self.IncompleteInternalFeatures.check_attribute(context, a);
            self.RedundantSemicolons.check_attribute(context, a);
            self.UnusedDocComment.check_attribute(context, a);
            self.Expr2024.check_attribute(context, a);
            self.Precedence.check_attribute(context, a);
            self.DoubleNegations.check_attribute(context, a);
        };
    }
    fn check_attributes(&mut self, context: &crate::EarlyContext<'_>,
        a: &[rustc_ast::Attribute]) {
        {
            self.UnusedParens.check_attributes(context, a);
            self.UnusedBraces.check_attributes(context, a);
            self.UnusedImportBraces.check_attributes(context, a);
            self.UnsafeCode.check_attributes(context, a);
            self.SpecialModuleName.check_attributes(context, a);
            self.AnonymousParameters.check_attributes(context, a);
            self.EllipsisInclusiveRangePatterns.check_attributes(context, a);
            self.NonCamelCaseTypes.check_attributes(context, a);
            self.WhileTrue.check_attributes(context, a);
            self.NonAsciiIdents.check_attributes(context, a);
            self.IncompleteInternalFeatures.check_attributes(context, a);
            self.RedundantSemicolons.check_attributes(context, a);
            self.UnusedDocComment.check_attributes(context, a);
            self.Expr2024.check_attributes(context, a);
            self.Precedence.check_attributes(context, a);
            self.DoubleNegations.check_attributes(context, a);
        };
    }
    fn check_attributes_post(&mut self, context: &crate::EarlyContext<'_>,
        a: &[rustc_ast::Attribute]) {
        {
            self.UnusedParens.check_attributes_post(context, a);
            self.UnusedBraces.check_attributes_post(context, a);
            self.UnusedImportBraces.check_attributes_post(context, a);
            self.UnsafeCode.check_attributes_post(context, a);
            self.SpecialModuleName.check_attributes_post(context, a);
            self.AnonymousParameters.check_attributes_post(context, a);
            self.EllipsisInclusiveRangePatterns.check_attributes_post(context,
                a);
            self.NonCamelCaseTypes.check_attributes_post(context, a);
            self.WhileTrue.check_attributes_post(context, a);
            self.NonAsciiIdents.check_attributes_post(context, a);
            self.IncompleteInternalFeatures.check_attributes_post(context, a);
            self.RedundantSemicolons.check_attributes_post(context, a);
            self.UnusedDocComment.check_attributes_post(context, a);
            self.Expr2024.check_attributes_post(context, a);
            self.Precedence.check_attributes_post(context, a);
            self.DoubleNegations.check_attributes_post(context, a);
        };
    }
    fn check_mac_def(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::MacroDef) {
        {
            self.UnusedParens.check_mac_def(context, a);
            self.UnusedBraces.check_mac_def(context, a);
            self.UnusedImportBraces.check_mac_def(context, a);
            self.UnsafeCode.check_mac_def(context, a);
            self.SpecialModuleName.check_mac_def(context, a);
            self.AnonymousParameters.check_mac_def(context, a);
            self.EllipsisInclusiveRangePatterns.check_mac_def(context, a);
            self.NonCamelCaseTypes.check_mac_def(context, a);
            self.WhileTrue.check_mac_def(context, a);
            self.NonAsciiIdents.check_mac_def(context, a);
            self.IncompleteInternalFeatures.check_mac_def(context, a);
            self.RedundantSemicolons.check_mac_def(context, a);
            self.UnusedDocComment.check_mac_def(context, a);
            self.Expr2024.check_mac_def(context, a);
            self.Precedence.check_mac_def(context, a);
            self.DoubleNegations.check_mac_def(context, a);
        };
    }
    fn check_mac(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::MacCall) {
        {
            self.UnusedParens.check_mac(context, a);
            self.UnusedBraces.check_mac(context, a);
            self.UnusedImportBraces.check_mac(context, a);
            self.UnsafeCode.check_mac(context, a);
            self.SpecialModuleName.check_mac(context, a);
            self.AnonymousParameters.check_mac(context, a);
            self.EllipsisInclusiveRangePatterns.check_mac(context, a);
            self.NonCamelCaseTypes.check_mac(context, a);
            self.WhileTrue.check_mac(context, a);
            self.NonAsciiIdents.check_mac(context, a);
            self.IncompleteInternalFeatures.check_mac(context, a);
            self.RedundantSemicolons.check_mac(context, a);
            self.UnusedDocComment.check_mac(context, a);
            self.Expr2024.check_mac(context, a);
            self.Precedence.check_mac(context, a);
            self.DoubleNegations.check_mac(context, a);
        };
    }
    fn enter_where_predicate(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::WherePredicate) {
        {
            self.UnusedParens.enter_where_predicate(context, a);
            self.UnusedBraces.enter_where_predicate(context, a);
            self.UnusedImportBraces.enter_where_predicate(context, a);
            self.UnsafeCode.enter_where_predicate(context, a);
            self.SpecialModuleName.enter_where_predicate(context, a);
            self.AnonymousParameters.enter_where_predicate(context, a);
            self.EllipsisInclusiveRangePatterns.enter_where_predicate(context,
                a);
            self.NonCamelCaseTypes.enter_where_predicate(context, a);
            self.WhileTrue.enter_where_predicate(context, a);
            self.NonAsciiIdents.enter_where_predicate(context, a);
            self.IncompleteInternalFeatures.enter_where_predicate(context, a);
            self.RedundantSemicolons.enter_where_predicate(context, a);
            self.UnusedDocComment.enter_where_predicate(context, a);
            self.Expr2024.enter_where_predicate(context, a);
            self.Precedence.enter_where_predicate(context, a);
            self.DoubleNegations.enter_where_predicate(context, a);
        };
    }
    fn exit_where_predicate(&mut self, context: &crate::EarlyContext<'_>,
        a: &rustc_ast::WherePredicate) {
        {
            self.UnusedParens.exit_where_predicate(context, a);
            self.UnusedBraces.exit_where_predicate(context, a);
            self.UnusedImportBraces.exit_where_predicate(context, a);
            self.UnsafeCode.exit_where_predicate(context, a);
            self.SpecialModuleName.exit_where_predicate(context, a);
            self.AnonymousParameters.exit_where_predicate(context, a);
            self.EllipsisInclusiveRangePatterns.exit_where_predicate(context,
                a);
            self.NonCamelCaseTypes.exit_where_predicate(context, a);
            self.WhileTrue.exit_where_predicate(context, a);
            self.NonAsciiIdents.exit_where_predicate(context, a);
            self.IncompleteInternalFeatures.exit_where_predicate(context, a);
            self.RedundantSemicolons.exit_where_predicate(context, a);
            self.UnusedDocComment.exit_where_predicate(context, a);
            self.Expr2024.exit_where_predicate(context, a);
            self.Precedence.exit_where_predicate(context, a);
            self.DoubleNegations.exit_where_predicate(context, a);
        };
    }
}
#[allow(rustc :: lint_pass_impl_without_macro)]
impl crate::LintPass for BuiltinCombinedEarlyLintPass {
    fn name(&self) -> &'static str {
        ::core::panicking::panic("explicit panic")
    }
    fn get_lints(&self) -> LintVec {
        ::core::panicking::panic("explicit panic")
    }
}early_lint_methods!(
166    declare_combined_early_lint_pass,
167    [
168        pub BuiltinCombinedEarlyLintPass,
169        [
170            UnusedParens: UnusedParens::default(),
171            UnusedBraces: UnusedBraces,
172            UnusedImportBraces: UnusedImportBraces,
173            UnsafeCode: UnsafeCode,
174            SpecialModuleName: SpecialModuleName,
175            AnonymousParameters: AnonymousParameters,
176            EllipsisInclusiveRangePatterns: EllipsisInclusiveRangePatterns::default(),
177            NonCamelCaseTypes: NonCamelCaseTypes,
178            WhileTrue: WhileTrue,
179            NonAsciiIdents: NonAsciiIdents,
180            IncompleteInternalFeatures: IncompleteInternalFeatures,
181            RedundantSemicolons: RedundantSemicolons,
182            UnusedDocComment: UnusedDocComment,
183            Expr2024: Expr2024,
184            Precedence: Precedence,
185            DoubleNegations: DoubleNegations,
186        ]
187    ]
188);
189
190#[allow(non_snake_case)]
struct BuiltinCombinedModuleLateLintPass {
    ForLoopsOverFallibles: ForLoopsOverFallibles,
    DefaultCouldBeDerived: DefaultCouldBeDerived,
    DerefIntoDynSupertrait: DerefIntoDynSupertrait,
    DropForgetUseless: DropForgetUseless,
    ImproperCTypesLint: ImproperCTypesLint,
    ImproperGpuKernelLint: ImproperGpuKernelLint,
    InvalidFromUtf8: InvalidFromUtf8,
    VariantSizeDifferences: VariantSizeDifferences,
    PathStatements: PathStatements,
    LetUnderscore: LetUnderscore,
    InvalidReferenceCasting: InvalidReferenceCasting,
    ImplicitAutorefs: ImplicitAutorefs,
    UnusedResults: UnusedResults,
    UnitBindings: UnitBindings,
    NonUpperCaseGlobals: NonUpperCaseGlobals,
    NonShorthandFieldPatterns: NonShorthandFieldPatterns,
    UnusedAllocation: UnusedAllocation,
    MissingCopyImplementations: MissingCopyImplementations,
    PtrNullChecks: PtrNullChecks,
    MutableTransmutes: MutableTransmutes,
    TypeAliasBounds: TypeAliasBounds,
    TrivialConstraints: TrivialConstraints,
    TypeLimits: TypeLimits,
    NonSnakeCase: NonSnakeCase,
    InvalidNoMangleItems: InvalidNoMangleItems,
    UnreachablePub: UnreachablePub,
    ExplicitOutlivesRequirements: ExplicitOutlivesRequirements,
    InvalidValue: InvalidValue,
    DerefNullPtr: DerefNullPtr,
    UnstableFeatures: UnstableFeatures,
    UngatedAsyncFnTrackCaller: UngatedAsyncFnTrackCaller,
    ShadowedIntoIter: ShadowedIntoIter,
    DropTraitConstraints: DropTraitConstraints,
    DanglingPointers: DanglingPointers,
    NonPanicFmt: NonPanicFmt,
    NoopMethodCall: NoopMethodCall,
    EnumIntrinsicsNonEnums: EnumIntrinsicsNonEnums,
    InvalidAtomicOrdering: InvalidAtomicOrdering,
    AsmLabels: AsmLabels,
    OpaqueHiddenInferredBound: OpaqueHiddenInferredBound,
    MultipleSupertraitUpcastable: MultipleSupertraitUpcastable,
    MapUnitFn: MapUnitFn,
    MissingDebugImplementations: MissingDebugImplementations,
    MissingDoc: MissingDoc,
    AsyncClosureUsage: AsyncClosureUsage,
    AsyncFnInTrait: AsyncFnInTrait,
    NonLocalDefinitions: NonLocalDefinitions,
    InteriorMutableConsts: InteriorMutableConsts,
    ImplTraitOvercaptures: ImplTraitOvercaptures,
    IfLetRescope: IfLetRescope,
    StaticMutRefs: StaticMutRefs,
    UnqualifiedLocalImports: UnqualifiedLocalImports,
    FunctionCastsAsInteger: FunctionCastsAsInteger,
    CheckTransmutes: CheckTransmutes,
    LifetimeSyntax: LifetimeSyntax,
}
impl BuiltinCombinedModuleLateLintPass {
    fn new() -> Self {
        Self {
            ForLoopsOverFallibles: ForLoopsOverFallibles,
            DefaultCouldBeDerived: DefaultCouldBeDerived,
            DerefIntoDynSupertrait: DerefIntoDynSupertrait,
            DropForgetUseless: DropForgetUseless,
            ImproperCTypesLint: ImproperCTypesLint,
            ImproperGpuKernelLint: ImproperGpuKernelLint,
            InvalidFromUtf8: InvalidFromUtf8,
            VariantSizeDifferences: VariantSizeDifferences,
            PathStatements: PathStatements,
            LetUnderscore: LetUnderscore,
            InvalidReferenceCasting: InvalidReferenceCasting,
            ImplicitAutorefs: ImplicitAutorefs,
            UnusedResults: UnusedResults,
            UnitBindings: UnitBindings,
            NonUpperCaseGlobals: NonUpperCaseGlobals,
            NonShorthandFieldPatterns: NonShorthandFieldPatterns,
            UnusedAllocation: UnusedAllocation,
            MissingCopyImplementations: MissingCopyImplementations,
            PtrNullChecks: PtrNullChecks,
            MutableTransmutes: MutableTransmutes,
            TypeAliasBounds: TypeAliasBounds,
            TrivialConstraints: TrivialConstraints,
            TypeLimits: TypeLimits::new(),
            NonSnakeCase: NonSnakeCase,
            InvalidNoMangleItems: InvalidNoMangleItems,
            UnreachablePub: UnreachablePub,
            ExplicitOutlivesRequirements: ExplicitOutlivesRequirements,
            InvalidValue: InvalidValue,
            DerefNullPtr: DerefNullPtr,
            UnstableFeatures: UnstableFeatures,
            UngatedAsyncFnTrackCaller: UngatedAsyncFnTrackCaller,
            ShadowedIntoIter: ShadowedIntoIter,
            DropTraitConstraints: DropTraitConstraints,
            DanglingPointers: DanglingPointers,
            NonPanicFmt: NonPanicFmt,
            NoopMethodCall: NoopMethodCall,
            EnumIntrinsicsNonEnums: EnumIntrinsicsNonEnums,
            InvalidAtomicOrdering: InvalidAtomicOrdering,
            AsmLabels: AsmLabels,
            OpaqueHiddenInferredBound: OpaqueHiddenInferredBound,
            MultipleSupertraitUpcastable: MultipleSupertraitUpcastable,
            MapUnitFn: MapUnitFn,
            MissingDebugImplementations: MissingDebugImplementations,
            MissingDoc: MissingDoc,
            AsyncClosureUsage: AsyncClosureUsage,
            AsyncFnInTrait: AsyncFnInTrait,
            NonLocalDefinitions: NonLocalDefinitions::default(),
            InteriorMutableConsts: InteriorMutableConsts,
            ImplTraitOvercaptures: ImplTraitOvercaptures,
            IfLetRescope: IfLetRescope::default(),
            StaticMutRefs: StaticMutRefs,
            UnqualifiedLocalImports: UnqualifiedLocalImports,
            FunctionCastsAsInteger: FunctionCastsAsInteger,
            CheckTransmutes: CheckTransmutes,
            LifetimeSyntax: LifetimeSyntax,
        }
    }
    fn get_lints() -> crate::LintVec {
        let mut lints = Vec::new();
        lints.extend_from_slice(&ForLoopsOverFallibles::lint_vec());
        lints.extend_from_slice(&DefaultCouldBeDerived::lint_vec());
        lints.extend_from_slice(&DerefIntoDynSupertrait::lint_vec());
        lints.extend_from_slice(&DropForgetUseless::lint_vec());
        lints.extend_from_slice(&ImproperCTypesLint::lint_vec());
        lints.extend_from_slice(&ImproperGpuKernelLint::lint_vec());
        lints.extend_from_slice(&InvalidFromUtf8::lint_vec());
        lints.extend_from_slice(&VariantSizeDifferences::lint_vec());
        lints.extend_from_slice(&PathStatements::lint_vec());
        lints.extend_from_slice(&LetUnderscore::lint_vec());
        lints.extend_from_slice(&InvalidReferenceCasting::lint_vec());
        lints.extend_from_slice(&ImplicitAutorefs::lint_vec());
        lints.extend_from_slice(&UnusedResults::lint_vec());
        lints.extend_from_slice(&UnitBindings::lint_vec());
        lints.extend_from_slice(&NonUpperCaseGlobals::lint_vec());
        lints.extend_from_slice(&NonShorthandFieldPatterns::lint_vec());
        lints.extend_from_slice(&UnusedAllocation::lint_vec());
        lints.extend_from_slice(&MissingCopyImplementations::lint_vec());
        lints.extend_from_slice(&PtrNullChecks::lint_vec());
        lints.extend_from_slice(&MutableTransmutes::lint_vec());
        lints.extend_from_slice(&TypeAliasBounds::lint_vec());
        lints.extend_from_slice(&TrivialConstraints::lint_vec());
        lints.extend_from_slice(&TypeLimits::lint_vec());
        lints.extend_from_slice(&NonSnakeCase::lint_vec());
        lints.extend_from_slice(&InvalidNoMangleItems::lint_vec());
        lints.extend_from_slice(&UnreachablePub::lint_vec());
        lints.extend_from_slice(&ExplicitOutlivesRequirements::lint_vec());
        lints.extend_from_slice(&InvalidValue::lint_vec());
        lints.extend_from_slice(&DerefNullPtr::lint_vec());
        lints.extend_from_slice(&UnstableFeatures::lint_vec());
        lints.extend_from_slice(&UngatedAsyncFnTrackCaller::lint_vec());
        lints.extend_from_slice(&ShadowedIntoIter::lint_vec());
        lints.extend_from_slice(&DropTraitConstraints::lint_vec());
        lints.extend_from_slice(&DanglingPointers::lint_vec());
        lints.extend_from_slice(&NonPanicFmt::lint_vec());
        lints.extend_from_slice(&NoopMethodCall::lint_vec());
        lints.extend_from_slice(&EnumIntrinsicsNonEnums::lint_vec());
        lints.extend_from_slice(&InvalidAtomicOrdering::lint_vec());
        lints.extend_from_slice(&AsmLabels::lint_vec());
        lints.extend_from_slice(&OpaqueHiddenInferredBound::lint_vec());
        lints.extend_from_slice(&MultipleSupertraitUpcastable::lint_vec());
        lints.extend_from_slice(&MapUnitFn::lint_vec());
        lints.extend_from_slice(&MissingDebugImplementations::lint_vec());
        lints.extend_from_slice(&MissingDoc::lint_vec());
        lints.extend_from_slice(&AsyncClosureUsage::lint_vec());
        lints.extend_from_slice(&AsyncFnInTrait::lint_vec());
        lints.extend_from_slice(&NonLocalDefinitions::lint_vec());
        lints.extend_from_slice(&InteriorMutableConsts::lint_vec());
        lints.extend_from_slice(&ImplTraitOvercaptures::lint_vec());
        lints.extend_from_slice(&IfLetRescope::lint_vec());
        lints.extend_from_slice(&StaticMutRefs::lint_vec());
        lints.extend_from_slice(&UnqualifiedLocalImports::lint_vec());
        lints.extend_from_slice(&FunctionCastsAsInteger::lint_vec());
        lints.extend_from_slice(&CheckTransmutes::lint_vec());
        lints.extend_from_slice(&LifetimeSyntax::lint_vec());
        lints
    }
}
impl<'tcx> crate::LateLintPass<'tcx> for BuiltinCombinedModuleLateLintPass {
    fn check_body(&mut self, context: &crate::LateContext<'tcx>,
        a: &rustc_hir::Body<'tcx>) {
        {
            self.ForLoopsOverFallibles.check_body(context, a);
            self.DefaultCouldBeDerived.check_body(context, a);
            self.DerefIntoDynSupertrait.check_body(context, a);
            self.DropForgetUseless.check_body(context, a);
            self.ImproperCTypesLint.check_body(context, a);
            self.ImproperGpuKernelLint.check_body(context, a);
            self.InvalidFromUtf8.check_body(context, a);
            self.VariantSizeDifferences.check_body(context, a);
            self.PathStatements.check_body(context, a);
            self.LetUnderscore.check_body(context, a);
            self.InvalidReferenceCasting.check_body(context, a);
            self.ImplicitAutorefs.check_body(context, a);
            self.UnusedResults.check_body(context, a);
            self.UnitBindings.check_body(context, a);
            self.NonUpperCaseGlobals.check_body(context, a);
            self.NonShorthandFieldPatterns.check_body(context, a);
            self.UnusedAllocation.check_body(context, a);
            self.MissingCopyImplementations.check_body(context, a);
            self.PtrNullChecks.check_body(context, a);
            self.MutableTransmutes.check_body(context, a);
            self.TypeAliasBounds.check_body(context, a);
            self.TrivialConstraints.check_body(context, a);
            self.TypeLimits.check_body(context, a);
            self.NonSnakeCase.check_body(context, a);
            self.InvalidNoMangleItems.check_body(context, a);
            self.UnreachablePub.check_body(context, a);
            self.ExplicitOutlivesRequirements.check_body(context, a);
            self.InvalidValue.check_body(context, a);
            self.DerefNullPtr.check_body(context, a);
            self.UnstableFeatures.check_body(context, a);
            self.UngatedAsyncFnTrackCaller.check_body(context, a);
            self.ShadowedIntoIter.check_body(context, a);
            self.DropTraitConstraints.check_body(context, a);
            self.DanglingPointers.check_body(context, a);
            self.NonPanicFmt.check_body(context, a);
            self.NoopMethodCall.check_body(context, a);
            self.EnumIntrinsicsNonEnums.check_body(context, a);
            self.InvalidAtomicOrdering.check_body(context, a);
            self.AsmLabels.check_body(context, a);
            self.OpaqueHiddenInferredBound.check_body(context, a);
            self.MultipleSupertraitUpcastable.check_body(context, a);
            self.MapUnitFn.check_body(context, a);
            self.MissingDebugImplementations.check_body(context, a);
            self.MissingDoc.check_body(context, a);
            self.AsyncClosureUsage.check_body(context, a);
            self.AsyncFnInTrait.check_body(context, a);
            self.NonLocalDefinitions.check_body(context, a);
            self.InteriorMutableConsts.check_body(context, a);
            self.ImplTraitOvercaptures.check_body(context, a);
            self.IfLetRescope.check_body(context, a);
            self.StaticMutRefs.check_body(context, a);
            self.UnqualifiedLocalImports.check_body(context, a);
            self.FunctionCastsAsInteger.check_body(context, a);
            self.CheckTransmutes.check_body(context, a);
            self.LifetimeSyntax.check_body(context, a);
        };
    }
    fn check_body_post(&mut self, context: &crate::LateContext<'tcx>,
        a: &rustc_hir::Body<'tcx>) {
        {
            self.ForLoopsOverFallibles.check_body_post(context, a);
            self.DefaultCouldBeDerived.check_body_post(context, a);
            self.DerefIntoDynSupertrait.check_body_post(context, a);
            self.DropForgetUseless.check_body_post(context, a);
            self.ImproperCTypesLint.check_body_post(context, a);
            self.ImproperGpuKernelLint.check_body_post(context, a);
            self.InvalidFromUtf8.check_body_post(context, a);
            self.VariantSizeDifferences.check_body_post(context, a);
            self.PathStatements.check_body_post(context, a);
            self.LetUnderscore.check_body_post(context, a);
            self.InvalidReferenceCasting.check_body_post(context, a);
            self.ImplicitAutorefs.check_body_post(context, a);
            self.UnusedResults.check_body_post(context, a);
            self.UnitBindings.check_body_post(context, a);
            self.NonUpperCaseGlobals.check_body_post(context, a);
            self.NonShorthandFieldPatterns.check_body_post(context, a);
            self.UnusedAllocation.check_body_post(context, a);
            self.MissingCopyImplementations.check_body_post(context, a);
            self.PtrNullChecks.check_body_post(context, a);
            self.MutableTransmutes.check_body_post(context, a);
            self.TypeAliasBounds.check_body_post(context, a);
            self.TrivialConstraints.check_body_post(context, a);
            self.TypeLimits.check_body_post(context, a);
            self.NonSnakeCase.check_body_post(context, a);
            self.InvalidNoMangleItems.check_body_post(context, a);
            self.UnreachablePub.check_body_post(context, a);
            self.ExplicitOutlivesRequirements.check_body_post(context, a);
            self.InvalidValue.check_body_post(context, a);
            self.DerefNullPtr.check_body_post(context, a);
            self.UnstableFeatures.check_body_post(context, a);
            self.UngatedAsyncFnTrackCaller.check_body_post(context, a);
            self.ShadowedIntoIter.check_body_post(context, a);
            self.DropTraitConstraints.check_body_post(context, a);
            self.DanglingPointers.check_body_post(context, a);
            self.NonPanicFmt.check_body_post(context, a);
            self.NoopMethodCall.check_body_post(context, a);
            self.EnumIntrinsicsNonEnums.check_body_post(context, a);
            self.InvalidAtomicOrdering.check_body_post(context, a);
            self.AsmLabels.check_body_post(context, a);
            self.OpaqueHiddenInferredBound.check_body_post(context, a);
            self.MultipleSupertraitUpcastable.check_body_post(context, a);
            self.MapUnitFn.check_body_post(context, a);
            self.MissingDebugImplementations.check_body_post(context, a);
            self.MissingDoc.check_body_post(context, a);
            self.AsyncClosureUsage.check_body_post(context, a);
            self.AsyncFnInTrait.check_body_post(context, a);
            self.NonLocalDefinitions.check_body_post(context, a);
            self.InteriorMutableConsts.check_body_post(context, a);
            self.ImplTraitOvercaptures.check_body_post(context, a);
            self.IfLetRescope.check_body_post(context, a);
            self.StaticMutRefs.check_body_post(context, a);
            self.UnqualifiedLocalImports.check_body_post(context, a);
            self.FunctionCastsAsInteger.check_body_post(context, a);
            self.CheckTransmutes.check_body_post(context, a);
            self.LifetimeSyntax.check_body_post(context, a);
        };
    }
    fn check_crate(&mut self, context: &crate::LateContext<'tcx>) {
        {
            self.ForLoopsOverFallibles.check_crate(context);
            self.DefaultCouldBeDerived.check_crate(context);
            self.DerefIntoDynSupertrait.check_crate(context);
            self.DropForgetUseless.check_crate(context);
            self.ImproperCTypesLint.check_crate(context);
            self.ImproperGpuKernelLint.check_crate(context);
            self.InvalidFromUtf8.check_crate(context);
            self.VariantSizeDifferences.check_crate(context);
            self.PathStatements.check_crate(context);
            self.LetUnderscore.check_crate(context);
            self.InvalidReferenceCasting.check_crate(context);
            self.ImplicitAutorefs.check_crate(context);
            self.UnusedResults.check_crate(context);
            self.UnitBindings.check_crate(context);
            self.NonUpperCaseGlobals.check_crate(context);
            self.NonShorthandFieldPatterns.check_crate(context);
            self.UnusedAllocation.check_crate(context);
            self.MissingCopyImplementations.check_crate(context);
            self.PtrNullChecks.check_crate(context);
            self.MutableTransmutes.check_crate(context);
            self.TypeAliasBounds.check_crate(context);
            self.TrivialConstraints.check_crate(context);
            self.TypeLimits.check_crate(context);
            self.NonSnakeCase.check_crate(context);
            self.InvalidNoMangleItems.check_crate(context);
            self.UnreachablePub.check_crate(context);
            self.ExplicitOutlivesRequirements.check_crate(context);
            self.InvalidValue.check_crate(context);
            self.DerefNullPtr.check_crate(context);
            self.UnstableFeatures.check_crate(context);
            self.UngatedAsyncFnTrackCaller.check_crate(context);
            self.ShadowedIntoIter.check_crate(context);
            self.DropTraitConstraints.check_crate(context);
            self.DanglingPointers.check_crate(context);
            self.NonPanicFmt.check_crate(context);
            self.NoopMethodCall.check_crate(context);
            self.EnumIntrinsicsNonEnums.check_crate(context);
            self.InvalidAtomicOrdering.check_crate(context);
            self.AsmLabels.check_crate(context);
            self.OpaqueHiddenInferredBound.check_crate(context);
            self.MultipleSupertraitUpcastable.check_crate(context);
            self.MapUnitFn.check_crate(context);
            self.MissingDebugImplementations.check_crate(context);
            self.MissingDoc.check_crate(context);
            self.AsyncClosureUsage.check_crate(context);
            self.AsyncFnInTrait.check_crate(context);
            self.NonLocalDefinitions.check_crate(context);
            self.InteriorMutableConsts.check_crate(context);
            self.ImplTraitOvercaptures.check_crate(context);
            self.IfLetRescope.check_crate(context);
            self.StaticMutRefs.check_crate(context);
            self.UnqualifiedLocalImports.check_crate(context);
            self.FunctionCastsAsInteger.check_crate(context);
            self.CheckTransmutes.check_crate(context);
            self.LifetimeSyntax.check_crate(context);
        };
    }
    fn check_crate_post(&mut self, context: &crate::LateContext<'tcx>) {
        {
            self.ForLoopsOverFallibles.check_crate_post(context);
            self.DefaultCouldBeDerived.check_crate_post(context);
            self.DerefIntoDynSupertrait.check_crate_post(context);
            self.DropForgetUseless.check_crate_post(context);
            self.ImproperCTypesLint.check_crate_post(context);
            self.ImproperGpuKernelLint.check_crate_post(context);
            self.InvalidFromUtf8.check_crate_post(context);
            self.VariantSizeDifferences.check_crate_post(context);
            self.PathStatements.check_crate_post(context);
            self.LetUnderscore.check_crate_post(context);
            self.InvalidReferenceCasting.check_crate_post(context);
            self.ImplicitAutorefs.check_crate_post(context);
            self.UnusedResults.check_crate_post(context);
            self.UnitBindings.check_crate_post(context);
            self.NonUpperCaseGlobals.check_crate_post(context);
            self.NonShorthandFieldPatterns.check_crate_post(context);
            self.UnusedAllocation.check_crate_post(context);
            self.MissingCopyImplementations.check_crate_post(context);
            self.PtrNullChecks.check_crate_post(context);
            self.MutableTransmutes.check_crate_post(context);
            self.TypeAliasBounds.check_crate_post(context);
            self.TrivialConstraints.check_crate_post(context);
            self.TypeLimits.check_crate_post(context);
            self.NonSnakeCase.check_crate_post(context);
            self.InvalidNoMangleItems.check_crate_post(context);
            self.UnreachablePub.check_crate_post(context);
            self.ExplicitOutlivesRequirements.check_crate_post(context);
            self.InvalidValue.check_crate_post(context);
            self.DerefNullPtr.check_crate_post(context);
            self.UnstableFeatures.check_crate_post(context);
            self.UngatedAsyncFnTrackCaller.check_crate_post(context);
            self.ShadowedIntoIter.check_crate_post(context);
            self.DropTraitConstraints.check_crate_post(context);
            self.DanglingPointers.check_crate_post(context);
            self.NonPanicFmt.check_crate_post(context);
            self.NoopMethodCall.check_crate_post(context);
            self.EnumIntrinsicsNonEnums.check_crate_post(context);
            self.InvalidAtomicOrdering.check_crate_post(context);
            self.AsmLabels.check_crate_post(context);
            self.OpaqueHiddenInferredBound.check_crate_post(context);
            self.MultipleSupertraitUpcastable.check_crate_post(context);
            self.MapUnitFn.check_crate_post(context);
            self.MissingDebugImplementations.check_crate_post(context);
            self.MissingDoc.check_crate_post(context);
            self.AsyncClosureUsage.check_crate_post(context);
            self.AsyncFnInTrait.check_crate_post(context);
            self.NonLocalDefinitions.check_crate_post(context);
            self.InteriorMutableConsts.check_crate_post(context);
            self.ImplTraitOvercaptures.check_crate_post(context);
            self.IfLetRescope.check_crate_post(context);
            self.StaticMutRefs.check_crate_post(context);
            self.UnqualifiedLocalImports.check_crate_post(context);
            self.FunctionCastsAsInteger.check_crate_post(context);
            self.CheckTransmutes.check_crate_post(context);
            self.LifetimeSyntax.check_crate_post(context);
        };
    }
    fn check_mod(&mut self, context: &crate::LateContext<'tcx>,
        a: &'tcx rustc_hir::Mod<'tcx>, b: rustc_hir::HirId) {
        {
            self.ForLoopsOverFallibles.check_mod(context, a, b);
            self.DefaultCouldBeDerived.check_mod(context, a, b);
            self.DerefIntoDynSupertrait.check_mod(context, a, b);
            self.DropForgetUseless.check_mod(context, a, b);
            self.ImproperCTypesLint.check_mod(context, a, b);
            self.ImproperGpuKernelLint.check_mod(context, a, b);
            self.InvalidFromUtf8.check_mod(context, a, b);
            self.VariantSizeDifferences.check_mod(context, a, b);
            self.PathStatements.check_mod(context, a, b);
            self.LetUnderscore.check_mod(context, a, b);
            self.InvalidReferenceCasting.check_mod(context, a, b);
            self.ImplicitAutorefs.check_mod(context, a, b);
            self.UnusedResults.check_mod(context, a, b);
            self.UnitBindings.check_mod(context, a, b);
            self.NonUpperCaseGlobals.check_mod(context, a, b);
            self.NonShorthandFieldPatterns.check_mod(context, a, b);
            self.UnusedAllocation.check_mod(context, a, b);
            self.MissingCopyImplementations.check_mod(context, a, b);
            self.PtrNullChecks.check_mod(context, a, b);
            self.MutableTransmutes.check_mod(context, a, b);
            self.TypeAliasBounds.check_mod(context, a, b);
            self.TrivialConstraints.check_mod(context, a, b);
            self.TypeLimits.check_mod(context, a, b);
            self.NonSnakeCase.check_mod(context, a, b);
            self.InvalidNoMangleItems.check_mod(context, a, b);
            self.UnreachablePub.check_mod(context, a, b);
            self.ExplicitOutlivesRequirements.check_mod(context, a, b);
            self.InvalidValue.check_mod(context, a, b);
            self.DerefNullPtr.check_mod(context, a, b);
            self.UnstableFeatures.check_mod(context, a, b);
            self.UngatedAsyncFnTrackCaller.check_mod(context, a, b);
            self.ShadowedIntoIter.check_mod(context, a, b);
            self.DropTraitConstraints.check_mod(context, a, b);
            self.DanglingPointers.check_mod(context, a, b);
            self.NonPanicFmt.check_mod(context, a, b);
            self.NoopMethodCall.check_mod(context, a, b);
            self.EnumIntrinsicsNonEnums.check_mod(context, a, b);
            self.InvalidAtomicOrdering.check_mod(context, a, b);
            self.AsmLabels.check_mod(context, a, b);
            self.OpaqueHiddenInferredBound.check_mod(context, a, b);
            self.MultipleSupertraitUpcastable.check_mod(context, a, b);
            self.MapUnitFn.check_mod(context, a, b);
            self.MissingDebugImplementations.check_mod(context, a, b);
            self.MissingDoc.check_mod(context, a, b);
            self.AsyncClosureUsage.check_mod(context, a, b);
            self.AsyncFnInTrait.check_mod(context, a, b);
            self.NonLocalDefinitions.check_mod(context, a, b);
            self.InteriorMutableConsts.check_mod(context, a, b);
            self.ImplTraitOvercaptures.check_mod(context, a, b);
            self.IfLetRescope.check_mod(context, a, b);
            self.StaticMutRefs.check_mod(context, a, b);
            self.UnqualifiedLocalImports.check_mod(context, a, b);
            self.FunctionCastsAsInteger.check_mod(context, a, b);
            self.CheckTransmutes.check_mod(context, a, b);
            self.LifetimeSyntax.check_mod(context, a, b);
        };
    }
    fn check_foreign_item(&mut self, context: &crate::LateContext<'tcx>,
        a: &'tcx rustc_hir::ForeignItem<'tcx>) {
        {
            self.ForLoopsOverFallibles.check_foreign_item(context, a);
            self.DefaultCouldBeDerived.check_foreign_item(context, a);
            self.DerefIntoDynSupertrait.check_foreign_item(context, a);
            self.DropForgetUseless.check_foreign_item(context, a);
            self.ImproperCTypesLint.check_foreign_item(context, a);
            self.ImproperGpuKernelLint.check_foreign_item(context, a);
            self.InvalidFromUtf8.check_foreign_item(context, a);
            self.VariantSizeDifferences.check_foreign_item(context, a);
            self.PathStatements.check_foreign_item(context, a);
            self.LetUnderscore.check_foreign_item(context, a);
            self.InvalidReferenceCasting.check_foreign_item(context, a);
            self.ImplicitAutorefs.check_foreign_item(context, a);
            self.UnusedResults.check_foreign_item(context, a);
            self.UnitBindings.check_foreign_item(context, a);
            self.NonUpperCaseGlobals.check_foreign_item(context, a);
            self.NonShorthandFieldPatterns.check_foreign_item(context, a);
            self.UnusedAllocation.check_foreign_item(context, a);
            self.MissingCopyImplementations.check_foreign_item(context, a);
            self.PtrNullChecks.check_foreign_item(context, a);
            self.MutableTransmutes.check_foreign_item(context, a);
            self.TypeAliasBounds.check_foreign_item(context, a);
            self.TrivialConstraints.check_foreign_item(context, a);
            self.TypeLimits.check_foreign_item(context, a);
            self.NonSnakeCase.check_foreign_item(context, a);
            self.InvalidNoMangleItems.check_foreign_item(context, a);
            self.UnreachablePub.check_foreign_item(context, a);
            self.ExplicitOutlivesRequirements.check_foreign_item(context, a);
            self.InvalidValue.check_foreign_item(context, a);
            self.DerefNullPtr.check_foreign_item(context, a);
            self.UnstableFeatures.check_foreign_item(context, a);
            self.UngatedAsyncFnTrackCaller.check_foreign_item(context, a);
            self.ShadowedIntoIter.check_foreign_item(context, a);
            self.DropTraitConstraints.check_foreign_item(context, a);
            self.DanglingPointers.check_foreign_item(context, a);
            self.NonPanicFmt.check_foreign_item(context, a);
            self.NoopMethodCall.check_foreign_item(context, a);
            self.EnumIntrinsicsNonEnums.check_foreign_item(context, a);
            self.InvalidAtomicOrdering.check_foreign_item(context, a);
            self.AsmLabels.check_foreign_item(context, a);
            self.OpaqueHiddenInferredBound.check_foreign_item(context, a);
            self.MultipleSupertraitUpcastable.check_foreign_item(context, a);
            self.MapUnitFn.check_foreign_item(context, a);
            self.MissingDebugImplementations.check_foreign_item(context, a);
            self.MissingDoc.check_foreign_item(context, a);
            self.AsyncClosureUsage.check_foreign_item(context, a);
            self.AsyncFnInTrait.check_foreign_item(context, a);
            self.NonLocalDefinitions.check_foreign_item(context, a);
            self.InteriorMutableConsts.check_foreign_item(context, a);
            self.ImplTraitOvercaptures.check_foreign_item(context, a);
            self.IfLetRescope.check_foreign_item(context, a);
            self.StaticMutRefs.check_foreign_item(context, a);
            self.UnqualifiedLocalImports.check_foreign_item(context, a);
            self.FunctionCastsAsInteger.check_foreign_item(context, a);
            self.CheckTransmutes.check_foreign_item(context, a);
            self.LifetimeSyntax.check_foreign_item(context, a);
        };
    }
    fn check_item(&mut self, context: &crate::LateContext<'tcx>,
        a: &'tcx rustc_hir::Item<'tcx>) {
        {
            self.ForLoopsOverFallibles.check_item(context, a);
            self.DefaultCouldBeDerived.check_item(context, a);
            self.DerefIntoDynSupertrait.check_item(context, a);
            self.DropForgetUseless.check_item(context, a);
            self.ImproperCTypesLint.check_item(context, a);
            self.ImproperGpuKernelLint.check_item(context, a);
            self.InvalidFromUtf8.check_item(context, a);
            self.VariantSizeDifferences.check_item(context, a);
            self.PathStatements.check_item(context, a);
            self.LetUnderscore.check_item(context, a);
            self.InvalidReferenceCasting.check_item(context, a);
            self.ImplicitAutorefs.check_item(context, a);
            self.UnusedResults.check_item(context, a);
            self.UnitBindings.check_item(context, a);
            self.NonUpperCaseGlobals.check_item(context, a);
            self.NonShorthandFieldPatterns.check_item(context, a);
            self.UnusedAllocation.check_item(context, a);
            self.MissingCopyImplementations.check_item(context, a);
            self.PtrNullChecks.check_item(context, a);
            self.MutableTransmutes.check_item(context, a);
            self.TypeAliasBounds.check_item(context, a);
            self.TrivialConstraints.check_item(context, a);
            self.TypeLimits.check_item(context, a);
            self.NonSnakeCase.check_item(context, a);
            self.InvalidNoMangleItems.check_item(context, a);
            self.UnreachablePub.check_item(context, a);
            self.ExplicitOutlivesRequirements.check_item(context, a);
            self.InvalidValue.check_item(context, a);
            self.DerefNullPtr.check_item(context, a);
            self.UnstableFeatures.check_item(context, a);
            self.UngatedAsyncFnTrackCaller.check_item(context, a);
            self.ShadowedIntoIter.check_item(context, a);
            self.DropTraitConstraints.check_item(context, a);
            self.DanglingPointers.check_item(context, a);
            self.NonPanicFmt.check_item(context, a);
            self.NoopMethodCall.check_item(context, a);
            self.EnumIntrinsicsNonEnums.check_item(context, a);
            self.InvalidAtomicOrdering.check_item(context, a);
            self.AsmLabels.check_item(context, a);
            self.OpaqueHiddenInferredBound.check_item(context, a);
            self.MultipleSupertraitUpcastable.check_item(context, a);
            self.MapUnitFn.check_item(context, a);
            self.MissingDebugImplementations.check_item(context, a);
            self.MissingDoc.check_item(context, a);
            self.AsyncClosureUsage.check_item(context, a);
            self.AsyncFnInTrait.check_item(context, a);
            self.NonLocalDefinitions.check_item(context, a);
            self.InteriorMutableConsts.check_item(context, a);
            self.ImplTraitOvercaptures.check_item(context, a);
            self.IfLetRescope.check_item(context, a);
            self.StaticMutRefs.check_item(context, a);
            self.UnqualifiedLocalImports.check_item(context, a);
            self.FunctionCastsAsInteger.check_item(context, a);
            self.CheckTransmutes.check_item(context, a);
            self.LifetimeSyntax.check_item(context, a);
        };
    }
    fn check_item_post(&mut self, context: &crate::LateContext<'tcx>,
        a: &'tcx rustc_hir::Item<'tcx>) {
        {
            self.ForLoopsOverFallibles.check_item_post(context, a);
            self.DefaultCouldBeDerived.check_item_post(context, a);
            self.DerefIntoDynSupertrait.check_item_post(context, a);
            self.DropForgetUseless.check_item_post(context, a);
            self.ImproperCTypesLint.check_item_post(context, a);
            self.ImproperGpuKernelLint.check_item_post(context, a);
            self.InvalidFromUtf8.check_item_post(context, a);
            self.VariantSizeDifferences.check_item_post(context, a);
            self.PathStatements.check_item_post(context, a);
            self.LetUnderscore.check_item_post(context, a);
            self.InvalidReferenceCasting.check_item_post(context, a);
            self.ImplicitAutorefs.check_item_post(context, a);
            self.UnusedResults.check_item_post(context, a);
            self.UnitBindings.check_item_post(context, a);
            self.NonUpperCaseGlobals.check_item_post(context, a);
            self.NonShorthandFieldPatterns.check_item_post(context, a);
            self.UnusedAllocation.check_item_post(context, a);
            self.MissingCopyImplementations.check_item_post(context, a);
            self.PtrNullChecks.check_item_post(context, a);
            self.MutableTransmutes.check_item_post(context, a);
            self.TypeAliasBounds.check_item_post(context, a);
            self.TrivialConstraints.check_item_post(context, a);
            self.TypeLimits.check_item_post(context, a);
            self.NonSnakeCase.check_item_post(context, a);
            self.InvalidNoMangleItems.check_item_post(context, a);
            self.UnreachablePub.check_item_post(context, a);
            self.ExplicitOutlivesRequirements.check_item_post(context, a);
            self.InvalidValue.check_item_post(context, a);
            self.DerefNullPtr.check_item_post(context, a);
            self.UnstableFeatures.check_item_post(context, a);
            self.UngatedAsyncFnTrackCaller.check_item_post(context, a);
            self.ShadowedIntoIter.check_item_post(context, a);
            self.DropTraitConstraints.check_item_post(context, a);
            self.DanglingPointers.check_item_post(context, a);
            self.NonPanicFmt.check_item_post(context, a);
            self.NoopMethodCall.check_item_post(context, a);
            self.EnumIntrinsicsNonEnums.check_item_post(context, a);
            self.InvalidAtomicOrdering.check_item_post(context, a);
            self.AsmLabels.check_item_post(context, a);
            self.OpaqueHiddenInferredBound.check_item_post(context, a);
            self.MultipleSupertraitUpcastable.check_item_post(context, a);
            self.MapUnitFn.check_item_post(context, a);
            self.MissingDebugImplementations.check_item_post(context, a);
            self.MissingDoc.check_item_post(context, a);
            self.AsyncClosureUsage.check_item_post(context, a);
            self.AsyncFnInTrait.check_item_post(context, a);
            self.NonLocalDefinitions.check_item_post(context, a);
            self.InteriorMutableConsts.check_item_post(context, a);
            self.ImplTraitOvercaptures.check_item_post(context, a);
            self.IfLetRescope.check_item_post(context, a);
            self.StaticMutRefs.check_item_post(context, a);
            self.UnqualifiedLocalImports.check_item_post(context, a);
            self.FunctionCastsAsInteger.check_item_post(context, a);
            self.CheckTransmutes.check_item_post(context, a);
            self.LifetimeSyntax.check_item_post(context, a);
        };
    }
    fn check_local(&mut self, context: &crate::LateContext<'tcx>,
        a: &'tcx rustc_hir::LetStmt<'tcx>) {
        {
            self.ForLoopsOverFallibles.check_local(context, a);
            self.DefaultCouldBeDerived.check_local(context, a);
            self.DerefIntoDynSupertrait.check_local(context, a);
            self.DropForgetUseless.check_local(context, a);
            self.ImproperCTypesLint.check_local(context, a);
            self.ImproperGpuKernelLint.check_local(context, a);
            self.InvalidFromUtf8.check_local(context, a);
            self.VariantSizeDifferences.check_local(context, a);
            self.PathStatements.check_local(context, a);
            self.LetUnderscore.check_local(context, a);
            self.InvalidReferenceCasting.check_local(context, a);
            self.ImplicitAutorefs.check_local(context, a);
            self.UnusedResults.check_local(context, a);
            self.UnitBindings.check_local(context, a);
            self.NonUpperCaseGlobals.check_local(context, a);
            self.NonShorthandFieldPatterns.check_local(context, a);
            self.UnusedAllocation.check_local(context, a);
            self.MissingCopyImplementations.check_local(context, a);
            self.PtrNullChecks.check_local(context, a);
            self.MutableTransmutes.check_local(context, a);
            self.TypeAliasBounds.check_local(context, a);
            self.TrivialConstraints.check_local(context, a);
            self.TypeLimits.check_local(context, a);
            self.NonSnakeCase.check_local(context, a);
            self.InvalidNoMangleItems.check_local(context, a);
            self.UnreachablePub.check_local(context, a);
            self.ExplicitOutlivesRequirements.check_local(context, a);
            self.InvalidValue.check_local(context, a);
            self.DerefNullPtr.check_local(context, a);
            self.UnstableFeatures.check_local(context, a);
            self.UngatedAsyncFnTrackCaller.check_local(context, a);
            self.ShadowedIntoIter.check_local(context, a);
            self.DropTraitConstraints.check_local(context, a);
            self.DanglingPointers.check_local(context, a);
            self.NonPanicFmt.check_local(context, a);
            self.NoopMethodCall.check_local(context, a);
            self.EnumIntrinsicsNonEnums.check_local(context, a);
            self.InvalidAtomicOrdering.check_local(context, a);
            self.AsmLabels.check_local(context, a);
            self.OpaqueHiddenInferredBound.check_local(context, a);
            self.MultipleSupertraitUpcastable.check_local(context, a);
            self.MapUnitFn.check_local(context, a);
            self.MissingDebugImplementations.check_local(context, a);
            self.MissingDoc.check_local(context, a);
            self.AsyncClosureUsage.check_local(context, a);
            self.AsyncFnInTrait.check_local(context, a);
            self.NonLocalDefinitions.check_local(context, a);
            self.InteriorMutableConsts.check_local(context, a);
            self.ImplTraitOvercaptures.check_local(context, a);
            self.IfLetRescope.check_local(context, a);
            self.StaticMutRefs.check_local(context, a);
            self.UnqualifiedLocalImports.check_local(context, a);
            self.FunctionCastsAsInteger.check_local(context, a);
            self.CheckTransmutes.check_local(context, a);
            self.LifetimeSyntax.check_local(context, a);
        };
    }
    fn check_block(&mut self, context: &crate::LateContext<'tcx>,
        a: &'tcx rustc_hir::Block<'tcx>) {
        {
            self.ForLoopsOverFallibles.check_block(context, a);
            self.DefaultCouldBeDerived.check_block(context, a);
            self.DerefIntoDynSupertrait.check_block(context, a);
            self.DropForgetUseless.check_block(context, a);
            self.ImproperCTypesLint.check_block(context, a);
            self.ImproperGpuKernelLint.check_block(context, a);
            self.InvalidFromUtf8.check_block(context, a);
            self.VariantSizeDifferences.check_block(context, a);
            self.PathStatements.check_block(context, a);
            self.LetUnderscore.check_block(context, a);
            self.InvalidReferenceCasting.check_block(context, a);
            self.ImplicitAutorefs.check_block(context, a);
            self.UnusedResults.check_block(context, a);
            self.UnitBindings.check_block(context, a);
            self.NonUpperCaseGlobals.check_block(context, a);
            self.NonShorthandFieldPatterns.check_block(context, a);
            self.UnusedAllocation.check_block(context, a);
            self.MissingCopyImplementations.check_block(context, a);
            self.PtrNullChecks.check_block(context, a);
            self.MutableTransmutes.check_block(context, a);
            self.TypeAliasBounds.check_block(context, a);
            self.TrivialConstraints.check_block(context, a);
            self.TypeLimits.check_block(context, a);
            self.NonSnakeCase.check_block(context, a);
            self.InvalidNoMangleItems.check_block(context, a);
            self.UnreachablePub.check_block(context, a);
            self.ExplicitOutlivesRequirements.check_block(context, a);
            self.InvalidValue.check_block(context, a);
            self.DerefNullPtr.check_block(context, a);
            self.UnstableFeatures.check_block(context, a);
            self.UngatedAsyncFnTrackCaller.check_block(context, a);
            self.ShadowedIntoIter.check_block(context, a);
            self.DropTraitConstraints.check_block(context, a);
            self.DanglingPointers.check_block(context, a);
            self.NonPanicFmt.check_block(context, a);
            self.NoopMethodCall.check_block(context, a);
            self.EnumIntrinsicsNonEnums.check_block(context, a);
            self.InvalidAtomicOrdering.check_block(context, a);
            self.AsmLabels.check_block(context, a);
            self.OpaqueHiddenInferredBound.check_block(context, a);
            self.MultipleSupertraitUpcastable.check_block(context, a);
            self.MapUnitFn.check_block(context, a);
            self.MissingDebugImplementations.check_block(context, a);
            self.MissingDoc.check_block(context, a);
            self.AsyncClosureUsage.check_block(context, a);
            self.AsyncFnInTrait.check_block(context, a);
            self.NonLocalDefinitions.check_block(context, a);
            self.InteriorMutableConsts.check_block(context, a);
            self.ImplTraitOvercaptures.check_block(context, a);
            self.IfLetRescope.check_block(context, a);
            self.StaticMutRefs.check_block(context, a);
            self.UnqualifiedLocalImports.check_block(context, a);
            self.FunctionCastsAsInteger.check_block(context, a);
            self.CheckTransmutes.check_block(context, a);
            self.LifetimeSyntax.check_block(context, a);
        };
    }
    fn check_block_post(&mut self, context: &crate::LateContext<'tcx>,
        a: &'tcx rustc_hir::Block<'tcx>) {
        {
            self.ForLoopsOverFallibles.check_block_post(context, a);
            self.DefaultCouldBeDerived.check_block_post(context, a);
            self.DerefIntoDynSupertrait.check_block_post(context, a);
            self.DropForgetUseless.check_block_post(context, a);
            self.ImproperCTypesLint.check_block_post(context, a);
            self.ImproperGpuKernelLint.check_block_post(context, a);
            self.InvalidFromUtf8.check_block_post(context, a);
            self.VariantSizeDifferences.check_block_post(context, a);
            self.PathStatements.check_block_post(context, a);
            self.LetUnderscore.check_block_post(context, a);
            self.InvalidReferenceCasting.check_block_post(context, a);
            self.ImplicitAutorefs.check_block_post(context, a);
            self.UnusedResults.check_block_post(context, a);
            self.UnitBindings.check_block_post(context, a);
            self.NonUpperCaseGlobals.check_block_post(context, a);
            self.NonShorthandFieldPatterns.check_block_post(context, a);
            self.UnusedAllocation.check_block_post(context, a);
            self.MissingCopyImplementations.check_block_post(context, a);
            self.PtrNullChecks.check_block_post(context, a);
            self.MutableTransmutes.check_block_post(context, a);
            self.TypeAliasBounds.check_block_post(context, a);
            self.TrivialConstraints.check_block_post(context, a);
            self.TypeLimits.check_block_post(context, a);
            self.NonSnakeCase.check_block_post(context, a);
            self.InvalidNoMangleItems.check_block_post(context, a);
            self.UnreachablePub.check_block_post(context, a);
            self.ExplicitOutlivesRequirements.check_block_post(context, a);
            self.InvalidValue.check_block_post(context, a);
            self.DerefNullPtr.check_block_post(context, a);
            self.UnstableFeatures.check_block_post(context, a);
            self.UngatedAsyncFnTrackCaller.check_block_post(context, a);
            self.ShadowedIntoIter.check_block_post(context, a);
            self.DropTraitConstraints.check_block_post(context, a);
            self.DanglingPointers.check_block_post(context, a);
            self.NonPanicFmt.check_block_post(context, a);
            self.NoopMethodCall.check_block_post(context, a);
            self.EnumIntrinsicsNonEnums.check_block_post(context, a);
            self.InvalidAtomicOrdering.check_block_post(context, a);
            self.AsmLabels.check_block_post(context, a);
            self.OpaqueHiddenInferredBound.check_block_post(context, a);
            self.MultipleSupertraitUpcastable.check_block_post(context, a);
            self.MapUnitFn.check_block_post(context, a);
            self.MissingDebugImplementations.check_block_post(context, a);
            self.MissingDoc.check_block_post(context, a);
            self.AsyncClosureUsage.check_block_post(context, a);
            self.AsyncFnInTrait.check_block_post(context, a);
            self.NonLocalDefinitions.check_block_post(context, a);
            self.InteriorMutableConsts.check_block_post(context, a);
            self.ImplTraitOvercaptures.check_block_post(context, a);
            self.IfLetRescope.check_block_post(context, a);
            self.StaticMutRefs.check_block_post(context, a);
            self.UnqualifiedLocalImports.check_block_post(context, a);
            self.FunctionCastsAsInteger.check_block_post(context, a);
            self.CheckTransmutes.check_block_post(context, a);
            self.LifetimeSyntax.check_block_post(context, a);
        };
    }
    fn check_stmt(&mut self, context: &crate::LateContext<'tcx>,
        a: &'tcx rustc_hir::Stmt<'tcx>) {
        {
            self.ForLoopsOverFallibles.check_stmt(context, a);
            self.DefaultCouldBeDerived.check_stmt(context, a);
            self.DerefIntoDynSupertrait.check_stmt(context, a);
            self.DropForgetUseless.check_stmt(context, a);
            self.ImproperCTypesLint.check_stmt(context, a);
            self.ImproperGpuKernelLint.check_stmt(context, a);
            self.InvalidFromUtf8.check_stmt(context, a);
            self.VariantSizeDifferences.check_stmt(context, a);
            self.PathStatements.check_stmt(context, a);
            self.LetUnderscore.check_stmt(context, a);
            self.InvalidReferenceCasting.check_stmt(context, a);
            self.ImplicitAutorefs.check_stmt(context, a);
            self.UnusedResults.check_stmt(context, a);
            self.UnitBindings.check_stmt(context, a);
            self.NonUpperCaseGlobals.check_stmt(context, a);
            self.NonShorthandFieldPatterns.check_stmt(context, a);
            self.UnusedAllocation.check_stmt(context, a);
            self.MissingCopyImplementations.check_stmt(context, a);
            self.PtrNullChecks.check_stmt(context, a);
            self.MutableTransmutes.check_stmt(context, a);
            self.TypeAliasBounds.check_stmt(context, a);
            self.TrivialConstraints.check_stmt(context, a);
            self.TypeLimits.check_stmt(context, a);
            self.NonSnakeCase.check_stmt(context, a);
            self.InvalidNoMangleItems.check_stmt(context, a);
            self.UnreachablePub.check_stmt(context, a);
            self.ExplicitOutlivesRequirements.check_stmt(context, a);
            self.InvalidValue.check_stmt(context, a);
            self.DerefNullPtr.check_stmt(context, a);
            self.UnstableFeatures.check_stmt(context, a);
            self.UngatedAsyncFnTrackCaller.check_stmt(context, a);
            self.ShadowedIntoIter.check_stmt(context, a);
            self.DropTraitConstraints.check_stmt(context, a);
            self.DanglingPointers.check_stmt(context, a);
            self.NonPanicFmt.check_stmt(context, a);
            self.NoopMethodCall.check_stmt(context, a);
            self.EnumIntrinsicsNonEnums.check_stmt(context, a);
            self.InvalidAtomicOrdering.check_stmt(context, a);
            self.AsmLabels.check_stmt(context, a);
            self.OpaqueHiddenInferredBound.check_stmt(context, a);
            self.MultipleSupertraitUpcastable.check_stmt(context, a);
            self.MapUnitFn.check_stmt(context, a);
            self.MissingDebugImplementations.check_stmt(context, a);
            self.MissingDoc.check_stmt(context, a);
            self.AsyncClosureUsage.check_stmt(context, a);
            self.AsyncFnInTrait.check_stmt(context, a);
            self.NonLocalDefinitions.check_stmt(context, a);
            self.InteriorMutableConsts.check_stmt(context, a);
            self.ImplTraitOvercaptures.check_stmt(context, a);
            self.IfLetRescope.check_stmt(context, a);
            self.StaticMutRefs.check_stmt(context, a);
            self.UnqualifiedLocalImports.check_stmt(context, a);
            self.FunctionCastsAsInteger.check_stmt(context, a);
            self.CheckTransmutes.check_stmt(context, a);
            self.LifetimeSyntax.check_stmt(context, a);
        };
    }
    fn check_arm(&mut self, context: &crate::LateContext<'tcx>,
        a: &'tcx rustc_hir::Arm<'tcx>) {
        {
            self.ForLoopsOverFallibles.check_arm(context, a);
            self.DefaultCouldBeDerived.check_arm(context, a);
            self.DerefIntoDynSupertrait.check_arm(context, a);
            self.DropForgetUseless.check_arm(context, a);
            self.ImproperCTypesLint.check_arm(context, a);
            self.ImproperGpuKernelLint.check_arm(context, a);
            self.InvalidFromUtf8.check_arm(context, a);
            self.VariantSizeDifferences.check_arm(context, a);
            self.PathStatements.check_arm(context, a);
            self.LetUnderscore.check_arm(context, a);
            self.InvalidReferenceCasting.check_arm(context, a);
            self.ImplicitAutorefs.check_arm(context, a);
            self.UnusedResults.check_arm(context, a);
            self.UnitBindings.check_arm(context, a);
            self.NonUpperCaseGlobals.check_arm(context, a);
            self.NonShorthandFieldPatterns.check_arm(context, a);
            self.UnusedAllocation.check_arm(context, a);
            self.MissingCopyImplementations.check_arm(context, a);
            self.PtrNullChecks.check_arm(context, a);
            self.MutableTransmutes.check_arm(context, a);
            self.TypeAliasBounds.check_arm(context, a);
            self.TrivialConstraints.check_arm(context, a);
            self.TypeLimits.check_arm(context, a);
            self.NonSnakeCase.check_arm(context, a);
            self.InvalidNoMangleItems.check_arm(context, a);
            self.UnreachablePub.check_arm(context, a);
            self.ExplicitOutlivesRequirements.check_arm(context, a);
            self.InvalidValue.check_arm(context, a);
            self.DerefNullPtr.check_arm(context, a);
            self.UnstableFeatures.check_arm(context, a);
            self.UngatedAsyncFnTrackCaller.check_arm(context, a);
            self.ShadowedIntoIter.check_arm(context, a);
            self.DropTraitConstraints.check_arm(context, a);
            self.DanglingPointers.check_arm(context, a);
            self.NonPanicFmt.check_arm(context, a);
            self.NoopMethodCall.check_arm(context, a);
            self.EnumIntrinsicsNonEnums.check_arm(context, a);
            self.InvalidAtomicOrdering.check_arm(context, a);
            self.AsmLabels.check_arm(context, a);
            self.OpaqueHiddenInferredBound.check_arm(context, a);
            self.MultipleSupertraitUpcastable.check_arm(context, a);
            self.MapUnitFn.check_arm(context, a);
            self.MissingDebugImplementations.check_arm(context, a);
            self.MissingDoc.check_arm(context, a);
            self.AsyncClosureUsage.check_arm(context, a);
            self.AsyncFnInTrait.check_arm(context, a);
            self.NonLocalDefinitions.check_arm(context, a);
            self.InteriorMutableConsts.check_arm(context, a);
            self.ImplTraitOvercaptures.check_arm(context, a);
            self.IfLetRescope.check_arm(context, a);
            self.StaticMutRefs.check_arm(context, a);
            self.UnqualifiedLocalImports.check_arm(context, a);
            self.FunctionCastsAsInteger.check_arm(context, a);
            self.CheckTransmutes.check_arm(context, a);
            self.LifetimeSyntax.check_arm(context, a);
        };
    }
    fn check_pat(&mut self, context: &crate::LateContext<'tcx>,
        a: &'tcx rustc_hir::Pat<'tcx>) {
        {
            self.ForLoopsOverFallibles.check_pat(context, a);
            self.DefaultCouldBeDerived.check_pat(context, a);
            self.DerefIntoDynSupertrait.check_pat(context, a);
            self.DropForgetUseless.check_pat(context, a);
            self.ImproperCTypesLint.check_pat(context, a);
            self.ImproperGpuKernelLint.check_pat(context, a);
            self.InvalidFromUtf8.check_pat(context, a);
            self.VariantSizeDifferences.check_pat(context, a);
            self.PathStatements.check_pat(context, a);
            self.LetUnderscore.check_pat(context, a);
            self.InvalidReferenceCasting.check_pat(context, a);
            self.ImplicitAutorefs.check_pat(context, a);
            self.UnusedResults.check_pat(context, a);
            self.UnitBindings.check_pat(context, a);
            self.NonUpperCaseGlobals.check_pat(context, a);
            self.NonShorthandFieldPatterns.check_pat(context, a);
            self.UnusedAllocation.check_pat(context, a);
            self.MissingCopyImplementations.check_pat(context, a);
            self.PtrNullChecks.check_pat(context, a);
            self.MutableTransmutes.check_pat(context, a);
            self.TypeAliasBounds.check_pat(context, a);
            self.TrivialConstraints.check_pat(context, a);
            self.TypeLimits.check_pat(context, a);
            self.NonSnakeCase.check_pat(context, a);
            self.InvalidNoMangleItems.check_pat(context, a);
            self.UnreachablePub.check_pat(context, a);
            self.ExplicitOutlivesRequirements.check_pat(context, a);
            self.InvalidValue.check_pat(context, a);
            self.DerefNullPtr.check_pat(context, a);
            self.UnstableFeatures.check_pat(context, a);
            self.UngatedAsyncFnTrackCaller.check_pat(context, a);
            self.ShadowedIntoIter.check_pat(context, a);
            self.DropTraitConstraints.check_pat(context, a);
            self.DanglingPointers.check_pat(context, a);
            self.NonPanicFmt.check_pat(context, a);
            self.NoopMethodCall.check_pat(context, a);
            self.EnumIntrinsicsNonEnums.check_pat(context, a);
            self.InvalidAtomicOrdering.check_pat(context, a);
            self.AsmLabels.check_pat(context, a);
            self.OpaqueHiddenInferredBound.check_pat(context, a);
            self.MultipleSupertraitUpcastable.check_pat(context, a);
            self.MapUnitFn.check_pat(context, a);
            self.MissingDebugImplementations.check_pat(context, a);
            self.MissingDoc.check_pat(context, a);
            self.AsyncClosureUsage.check_pat(context, a);
            self.AsyncFnInTrait.check_pat(context, a);
            self.NonLocalDefinitions.check_pat(context, a);
            self.InteriorMutableConsts.check_pat(context, a);
            self.ImplTraitOvercaptures.check_pat(context, a);
            self.IfLetRescope.check_pat(context, a);
            self.StaticMutRefs.check_pat(context, a);
            self.UnqualifiedLocalImports.check_pat(context, a);
            self.FunctionCastsAsInteger.check_pat(context, a);
            self.CheckTransmutes.check_pat(context, a);
            self.LifetimeSyntax.check_pat(context, a);
        };
    }
    fn check_lit(&mut self, context: &crate::LateContext<'tcx>,
        hir_id: rustc_hir::HirId, a: rustc_hir::Lit, negated: bool) {
        {
            self.ForLoopsOverFallibles.check_lit(context, hir_id, a, negated);
            self.DefaultCouldBeDerived.check_lit(context, hir_id, a, negated);
            self.DerefIntoDynSupertrait.check_lit(context, hir_id, a,
                negated);
            self.DropForgetUseless.check_lit(context, hir_id, a, negated);
            self.ImproperCTypesLint.check_lit(context, hir_id, a, negated);
            self.ImproperGpuKernelLint.check_lit(context, hir_id, a, negated);
            self.InvalidFromUtf8.check_lit(context, hir_id, a, negated);
            self.VariantSizeDifferences.check_lit(context, hir_id, a,
                negated);
            self.PathStatements.check_lit(context, hir_id, a, negated);
            self.LetUnderscore.check_lit(context, hir_id, a, negated);
            self.InvalidReferenceCasting.check_lit(context, hir_id, a,
                negated);
            self.ImplicitAutorefs.check_lit(context, hir_id, a, negated);
            self.UnusedResults.check_lit(context, hir_id, a, negated);
            self.UnitBindings.check_lit(context, hir_id, a, negated);
            self.NonUpperCaseGlobals.check_lit(context, hir_id, a, negated);
            self.NonShorthandFieldPatterns.check_lit(context, hir_id, a,
                negated);
            self.UnusedAllocation.check_lit(context, hir_id, a, negated);
            self.MissingCopyImplementations.check_lit(context, hir_id, a,
                negated);
            self.PtrNullChecks.check_lit(context, hir_id, a, negated);
            self.MutableTransmutes.check_lit(context, hir_id, a, negated);
            self.TypeAliasBounds.check_lit(context, hir_id, a, negated);
            self.TrivialConstraints.check_lit(context, hir_id, a, negated);
            self.TypeLimits.check_lit(context, hir_id, a, negated);
            self.NonSnakeCase.check_lit(context, hir_id, a, negated);
            self.InvalidNoMangleItems.check_lit(context, hir_id, a, negated);
            self.UnreachablePub.check_lit(context, hir_id, a, negated);
            self.ExplicitOutlivesRequirements.check_lit(context, hir_id, a,
                negated);
            self.InvalidValue.check_lit(context, hir_id, a, negated);
            self.DerefNullPtr.check_lit(context, hir_id, a, negated);
            self.UnstableFeatures.check_lit(context, hir_id, a, negated);
            self.UngatedAsyncFnTrackCaller.check_lit(context, hir_id, a,
                negated);
            self.ShadowedIntoIter.check_lit(context, hir_id, a, negated);
            self.DropTraitConstraints.check_lit(context, hir_id, a, negated);
            self.DanglingPointers.check_lit(context, hir_id, a, negated);
            self.NonPanicFmt.check_lit(context, hir_id, a, negated);
            self.NoopMethodCall.check_lit(context, hir_id, a, negated);
            self.EnumIntrinsicsNonEnums.check_lit(context, hir_id, a,
                negated);
            self.InvalidAtomicOrdering.check_lit(context, hir_id, a, negated);
            self.AsmLabels.check_lit(context, hir_id, a, negated);
            self.OpaqueHiddenInferredBound.check_lit(context, hir_id, a,
                negated);
            self.MultipleSupertraitUpcastable.check_lit(context, hir_id, a,
                negated);
            self.MapUnitFn.check_lit(context, hir_id, a, negated);
            self.MissingDebugImplementations.check_lit(context, hir_id, a,
                negated);
            self.MissingDoc.check_lit(context, hir_id, a, negated);
            self.AsyncClosureUsage.check_lit(context, hir_id, a, negated);
            self.AsyncFnInTrait.check_lit(context, hir_id, a, negated);
            self.NonLocalDefinitions.check_lit(context, hir_id, a, negated);
            self.InteriorMutableConsts.check_lit(context, hir_id, a, negated);
            self.ImplTraitOvercaptures.check_lit(context, hir_id, a, negated);
            self.IfLetRescope.check_lit(context, hir_id, a, negated);
            self.StaticMutRefs.check_lit(context, hir_id, a, negated);
            self.UnqualifiedLocalImports.check_lit(context, hir_id, a,
                negated);
            self.FunctionCastsAsInteger.check_lit(context, hir_id, a,
                negated);
            self.CheckTransmutes.check_lit(context, hir_id, a, negated);
            self.LifetimeSyntax.check_lit(context, hir_id, a, negated);
        };
    }
    fn check_expr(&mut self, context: &crate::LateContext<'tcx>,
        a: &'tcx rustc_hir::Expr<'tcx>) {
        {
            self.ForLoopsOverFallibles.check_expr(context, a);
            self.DefaultCouldBeDerived.check_expr(context, a);
            self.DerefIntoDynSupertrait.check_expr(context, a);
            self.DropForgetUseless.check_expr(context, a);
            self.ImproperCTypesLint.check_expr(context, a);
            self.ImproperGpuKernelLint.check_expr(context, a);
            self.InvalidFromUtf8.check_expr(context, a);
            self.VariantSizeDifferences.check_expr(context, a);
            self.PathStatements.check_expr(context, a);
            self.LetUnderscore.check_expr(context, a);
            self.InvalidReferenceCasting.check_expr(context, a);
            self.ImplicitAutorefs.check_expr(context, a);
            self.UnusedResults.check_expr(context, a);
            self.UnitBindings.check_expr(context, a);
            self.NonUpperCaseGlobals.check_expr(context, a);
            self.NonShorthandFieldPatterns.check_expr(context, a);
            self.UnusedAllocation.check_expr(context, a);
            self.MissingCopyImplementations.check_expr(context, a);
            self.PtrNullChecks.check_expr(context, a);
            self.MutableTransmutes.check_expr(context, a);
            self.TypeAliasBounds.check_expr(context, a);
            self.TrivialConstraints.check_expr(context, a);
            self.TypeLimits.check_expr(context, a);
            self.NonSnakeCase.check_expr(context, a);
            self.InvalidNoMangleItems.check_expr(context, a);
            self.UnreachablePub.check_expr(context, a);
            self.ExplicitOutlivesRequirements.check_expr(context, a);
            self.InvalidValue.check_expr(context, a);
            self.DerefNullPtr.check_expr(context, a);
            self.UnstableFeatures.check_expr(context, a);
            self.UngatedAsyncFnTrackCaller.check_expr(context, a);
            self.ShadowedIntoIter.check_expr(context, a);
            self.DropTraitConstraints.check_expr(context, a);
            self.DanglingPointers.check_expr(context, a);
            self.NonPanicFmt.check_expr(context, a);
            self.NoopMethodCall.check_expr(context, a);
            self.EnumIntrinsicsNonEnums.check_expr(context, a);
            self.InvalidAtomicOrdering.check_expr(context, a);
            self.AsmLabels.check_expr(context, a);
            self.OpaqueHiddenInferredBound.check_expr(context, a);
            self.MultipleSupertraitUpcastable.check_expr(context, a);
            self.MapUnitFn.check_expr(context, a);
            self.MissingDebugImplementations.check_expr(context, a);
            self.MissingDoc.check_expr(context, a);
            self.AsyncClosureUsage.check_expr(context, a);
            self.AsyncFnInTrait.check_expr(context, a);
            self.NonLocalDefinitions.check_expr(context, a);
            self.InteriorMutableConsts.check_expr(context, a);
            self.ImplTraitOvercaptures.check_expr(context, a);
            self.IfLetRescope.check_expr(context, a);
            self.StaticMutRefs.check_expr(context, a);
            self.UnqualifiedLocalImports.check_expr(context, a);
            self.FunctionCastsAsInteger.check_expr(context, a);
            self.CheckTransmutes.check_expr(context, a);
            self.LifetimeSyntax.check_expr(context, a);
        };
    }
    fn check_expr_post(&mut self, context: &crate::LateContext<'tcx>,
        a: &'tcx rustc_hir::Expr<'tcx>) {
        {
            self.ForLoopsOverFallibles.check_expr_post(context, a);
            self.DefaultCouldBeDerived.check_expr_post(context, a);
            self.DerefIntoDynSupertrait.check_expr_post(context, a);
            self.DropForgetUseless.check_expr_post(context, a);
            self.ImproperCTypesLint.check_expr_post(context, a);
            self.ImproperGpuKernelLint.check_expr_post(context, a);
            self.InvalidFromUtf8.check_expr_post(context, a);
            self.VariantSizeDifferences.check_expr_post(context, a);
            self.PathStatements.check_expr_post(context, a);
            self.LetUnderscore.check_expr_post(context, a);
            self.InvalidReferenceCasting.check_expr_post(context, a);
            self.ImplicitAutorefs.check_expr_post(context, a);
            self.UnusedResults.check_expr_post(context, a);
            self.UnitBindings.check_expr_post(context, a);
            self.NonUpperCaseGlobals.check_expr_post(context, a);
            self.NonShorthandFieldPatterns.check_expr_post(context, a);
            self.UnusedAllocation.check_expr_post(context, a);
            self.MissingCopyImplementations.check_expr_post(context, a);
            self.PtrNullChecks.check_expr_post(context, a);
            self.MutableTransmutes.check_expr_post(context, a);
            self.TypeAliasBounds.check_expr_post(context, a);
            self.TrivialConstraints.check_expr_post(context, a);
            self.TypeLimits.check_expr_post(context, a);
            self.NonSnakeCase.check_expr_post(context, a);
            self.InvalidNoMangleItems.check_expr_post(context, a);
            self.UnreachablePub.check_expr_post(context, a);
            self.ExplicitOutlivesRequirements.check_expr_post(context, a);
            self.InvalidValue.check_expr_post(context, a);
            self.DerefNullPtr.check_expr_post(context, a);
            self.UnstableFeatures.check_expr_post(context, a);
            self.UngatedAsyncFnTrackCaller.check_expr_post(context, a);
            self.ShadowedIntoIter.check_expr_post(context, a);
            self.DropTraitConstraints.check_expr_post(context, a);
            self.DanglingPointers.check_expr_post(context, a);
            self.NonPanicFmt.check_expr_post(context, a);
            self.NoopMethodCall.check_expr_post(context, a);
            self.EnumIntrinsicsNonEnums.check_expr_post(context, a);
            self.InvalidAtomicOrdering.check_expr_post(context, a);
            self.AsmLabels.check_expr_post(context, a);
            self.OpaqueHiddenInferredBound.check_expr_post(context, a);
            self.MultipleSupertraitUpcastable.check_expr_post(context, a);
            self.MapUnitFn.check_expr_post(context, a);
            self.MissingDebugImplementations.check_expr_post(context, a);
            self.MissingDoc.check_expr_post(context, a);
            self.AsyncClosureUsage.check_expr_post(context, a);
            self.AsyncFnInTrait.check_expr_post(context, a);
            self.NonLocalDefinitions.check_expr_post(context, a);
            self.InteriorMutableConsts.check_expr_post(context, a);
            self.ImplTraitOvercaptures.check_expr_post(context, a);
            self.IfLetRescope.check_expr_post(context, a);
            self.StaticMutRefs.check_expr_post(context, a);
            self.UnqualifiedLocalImports.check_expr_post(context, a);
            self.FunctionCastsAsInteger.check_expr_post(context, a);
            self.CheckTransmutes.check_expr_post(context, a);
            self.LifetimeSyntax.check_expr_post(context, a);
        };
    }
    fn check_ty(&mut self, context: &crate::LateContext<'tcx>,
        a: &'tcx rustc_hir::Ty<'tcx, rustc_hir::AmbigArg>) {
        {
            self.ForLoopsOverFallibles.check_ty(context, a);
            self.DefaultCouldBeDerived.check_ty(context, a);
            self.DerefIntoDynSupertrait.check_ty(context, a);
            self.DropForgetUseless.check_ty(context, a);
            self.ImproperCTypesLint.check_ty(context, a);
            self.ImproperGpuKernelLint.check_ty(context, a);
            self.InvalidFromUtf8.check_ty(context, a);
            self.VariantSizeDifferences.check_ty(context, a);
            self.PathStatements.check_ty(context, a);
            self.LetUnderscore.check_ty(context, a);
            self.InvalidReferenceCasting.check_ty(context, a);
            self.ImplicitAutorefs.check_ty(context, a);
            self.UnusedResults.check_ty(context, a);
            self.UnitBindings.check_ty(context, a);
            self.NonUpperCaseGlobals.check_ty(context, a);
            self.NonShorthandFieldPatterns.check_ty(context, a);
            self.UnusedAllocation.check_ty(context, a);
            self.MissingCopyImplementations.check_ty(context, a);
            self.PtrNullChecks.check_ty(context, a);
            self.MutableTransmutes.check_ty(context, a);
            self.TypeAliasBounds.check_ty(context, a);
            self.TrivialConstraints.check_ty(context, a);
            self.TypeLimits.check_ty(context, a);
            self.NonSnakeCase.check_ty(context, a);
            self.InvalidNoMangleItems.check_ty(context, a);
            self.UnreachablePub.check_ty(context, a);
            self.ExplicitOutlivesRequirements.check_ty(context, a);
            self.InvalidValue.check_ty(context, a);
            self.DerefNullPtr.check_ty(context, a);
            self.UnstableFeatures.check_ty(context, a);
            self.UngatedAsyncFnTrackCaller.check_ty(context, a);
            self.ShadowedIntoIter.check_ty(context, a);
            self.DropTraitConstraints.check_ty(context, a);
            self.DanglingPointers.check_ty(context, a);
            self.NonPanicFmt.check_ty(context, a);
            self.NoopMethodCall.check_ty(context, a);
            self.EnumIntrinsicsNonEnums.check_ty(context, a);
            self.InvalidAtomicOrdering.check_ty(context, a);
            self.AsmLabels.check_ty(context, a);
            self.OpaqueHiddenInferredBound.check_ty(context, a);
            self.MultipleSupertraitUpcastable.check_ty(context, a);
            self.MapUnitFn.check_ty(context, a);
            self.MissingDebugImplementations.check_ty(context, a);
            self.MissingDoc.check_ty(context, a);
            self.AsyncClosureUsage.check_ty(context, a);
            self.AsyncFnInTrait.check_ty(context, a);
            self.NonLocalDefinitions.check_ty(context, a);
            self.InteriorMutableConsts.check_ty(context, a);
            self.ImplTraitOvercaptures.check_ty(context, a);
            self.IfLetRescope.check_ty(context, a);
            self.StaticMutRefs.check_ty(context, a);
            self.UnqualifiedLocalImports.check_ty(context, a);
            self.FunctionCastsAsInteger.check_ty(context, a);
            self.CheckTransmutes.check_ty(context, a);
            self.LifetimeSyntax.check_ty(context, a);
        };
    }
    fn check_generic_param(&mut self, context: &crate::LateContext<'tcx>,
        a: &'tcx rustc_hir::GenericParam<'tcx>) {
        {
            self.ForLoopsOverFallibles.check_generic_param(context, a);
            self.DefaultCouldBeDerived.check_generic_param(context, a);
            self.DerefIntoDynSupertrait.check_generic_param(context, a);
            self.DropForgetUseless.check_generic_param(context, a);
            self.ImproperCTypesLint.check_generic_param(context, a);
            self.ImproperGpuKernelLint.check_generic_param(context, a);
            self.InvalidFromUtf8.check_generic_param(context, a);
            self.VariantSizeDifferences.check_generic_param(context, a);
            self.PathStatements.check_generic_param(context, a);
            self.LetUnderscore.check_generic_param(context, a);
            self.InvalidReferenceCasting.check_generic_param(context, a);
            self.ImplicitAutorefs.check_generic_param(context, a);
            self.UnusedResults.check_generic_param(context, a);
            self.UnitBindings.check_generic_param(context, a);
            self.NonUpperCaseGlobals.check_generic_param(context, a);
            self.NonShorthandFieldPatterns.check_generic_param(context, a);
            self.UnusedAllocation.check_generic_param(context, a);
            self.MissingCopyImplementations.check_generic_param(context, a);
            self.PtrNullChecks.check_generic_param(context, a);
            self.MutableTransmutes.check_generic_param(context, a);
            self.TypeAliasBounds.check_generic_param(context, a);
            self.TrivialConstraints.check_generic_param(context, a);
            self.TypeLimits.check_generic_param(context, a);
            self.NonSnakeCase.check_generic_param(context, a);
            self.InvalidNoMangleItems.check_generic_param(context, a);
            self.UnreachablePub.check_generic_param(context, a);
            self.ExplicitOutlivesRequirements.check_generic_param(context, a);
            self.InvalidValue.check_generic_param(context, a);
            self.DerefNullPtr.check_generic_param(context, a);
            self.UnstableFeatures.check_generic_param(context, a);
            self.UngatedAsyncFnTrackCaller.check_generic_param(context, a);
            self.ShadowedIntoIter.check_generic_param(context, a);
            self.DropTraitConstraints.check_generic_param(context, a);
            self.DanglingPointers.check_generic_param(context, a);
            self.NonPanicFmt.check_generic_param(context, a);
            self.NoopMethodCall.check_generic_param(context, a);
            self.EnumIntrinsicsNonEnums.check_generic_param(context, a);
            self.InvalidAtomicOrdering.check_generic_param(context, a);
            self.AsmLabels.check_generic_param(context, a);
            self.OpaqueHiddenInferredBound.check_generic_param(context, a);
            self.MultipleSupertraitUpcastable.check_generic_param(context, a);
            self.MapUnitFn.check_generic_param(context, a);
            self.MissingDebugImplementations.check_generic_param(context, a);
            self.MissingDoc.check_generic_param(context, a);
            self.AsyncClosureUsage.check_generic_param(context, a);
            self.AsyncFnInTrait.check_generic_param(context, a);
            self.NonLocalDefinitions.check_generic_param(context, a);
            self.InteriorMutableConsts.check_generic_param(context, a);
            self.ImplTraitOvercaptures.check_generic_param(context, a);
            self.IfLetRescope.check_generic_param(context, a);
            self.StaticMutRefs.check_generic_param(context, a);
            self.UnqualifiedLocalImports.check_generic_param(context, a);
            self.FunctionCastsAsInteger.check_generic_param(context, a);
            self.CheckTransmutes.check_generic_param(context, a);
            self.LifetimeSyntax.check_generic_param(context, a);
        };
    }
    fn check_generics(&mut self, context: &crate::LateContext<'tcx>,
        a: &'tcx rustc_hir::Generics<'tcx>) {
        {
            self.ForLoopsOverFallibles.check_generics(context, a);
            self.DefaultCouldBeDerived.check_generics(context, a);
            self.DerefIntoDynSupertrait.check_generics(context, a);
            self.DropForgetUseless.check_generics(context, a);
            self.ImproperCTypesLint.check_generics(context, a);
            self.ImproperGpuKernelLint.check_generics(context, a);
            self.InvalidFromUtf8.check_generics(context, a);
            self.VariantSizeDifferences.check_generics(context, a);
            self.PathStatements.check_generics(context, a);
            self.LetUnderscore.check_generics(context, a);
            self.InvalidReferenceCasting.check_generics(context, a);
            self.ImplicitAutorefs.check_generics(context, a);
            self.UnusedResults.check_generics(context, a);
            self.UnitBindings.check_generics(context, a);
            self.NonUpperCaseGlobals.check_generics(context, a);
            self.NonShorthandFieldPatterns.check_generics(context, a);
            self.UnusedAllocation.check_generics(context, a);
            self.MissingCopyImplementations.check_generics(context, a);
            self.PtrNullChecks.check_generics(context, a);
            self.MutableTransmutes.check_generics(context, a);
            self.TypeAliasBounds.check_generics(context, a);
            self.TrivialConstraints.check_generics(context, a);
            self.TypeLimits.check_generics(context, a);
            self.NonSnakeCase.check_generics(context, a);
            self.InvalidNoMangleItems.check_generics(context, a);
            self.UnreachablePub.check_generics(context, a);
            self.ExplicitOutlivesRequirements.check_generics(context, a);
            self.InvalidValue.check_generics(context, a);
            self.DerefNullPtr.check_generics(context, a);
            self.UnstableFeatures.check_generics(context, a);
            self.UngatedAsyncFnTrackCaller.check_generics(context, a);
            self.ShadowedIntoIter.check_generics(context, a);
            self.DropTraitConstraints.check_generics(context, a);
            self.DanglingPointers.check_generics(context, a);
            self.NonPanicFmt.check_generics(context, a);
            self.NoopMethodCall.check_generics(context, a);
            self.EnumIntrinsicsNonEnums.check_generics(context, a);
            self.InvalidAtomicOrdering.check_generics(context, a);
            self.AsmLabels.check_generics(context, a);
            self.OpaqueHiddenInferredBound.check_generics(context, a);
            self.MultipleSupertraitUpcastable.check_generics(context, a);
            self.MapUnitFn.check_generics(context, a);
            self.MissingDebugImplementations.check_generics(context, a);
            self.MissingDoc.check_generics(context, a);
            self.AsyncClosureUsage.check_generics(context, a);
            self.AsyncFnInTrait.check_generics(context, a);
            self.NonLocalDefinitions.check_generics(context, a);
            self.InteriorMutableConsts.check_generics(context, a);
            self.ImplTraitOvercaptures.check_generics(context, a);
            self.IfLetRescope.check_generics(context, a);
            self.StaticMutRefs.check_generics(context, a);
            self.UnqualifiedLocalImports.check_generics(context, a);
            self.FunctionCastsAsInteger.check_generics(context, a);
            self.CheckTransmutes.check_generics(context, a);
            self.LifetimeSyntax.check_generics(context, a);
        };
    }
    fn check_poly_trait_ref(&mut self, context: &crate::LateContext<'tcx>,
        a: &'tcx rustc_hir::PolyTraitRef<'tcx>) {
        {
            self.ForLoopsOverFallibles.check_poly_trait_ref(context, a);
            self.DefaultCouldBeDerived.check_poly_trait_ref(context, a);
            self.DerefIntoDynSupertrait.check_poly_trait_ref(context, a);
            self.DropForgetUseless.check_poly_trait_ref(context, a);
            self.ImproperCTypesLint.check_poly_trait_ref(context, a);
            self.ImproperGpuKernelLint.check_poly_trait_ref(context, a);
            self.InvalidFromUtf8.check_poly_trait_ref(context, a);
            self.VariantSizeDifferences.check_poly_trait_ref(context, a);
            self.PathStatements.check_poly_trait_ref(context, a);
            self.LetUnderscore.check_poly_trait_ref(context, a);
            self.InvalidReferenceCasting.check_poly_trait_ref(context, a);
            self.ImplicitAutorefs.check_poly_trait_ref(context, a);
            self.UnusedResults.check_poly_trait_ref(context, a);
            self.UnitBindings.check_poly_trait_ref(context, a);
            self.NonUpperCaseGlobals.check_poly_trait_ref(context, a);
            self.NonShorthandFieldPatterns.check_poly_trait_ref(context, a);
            self.UnusedAllocation.check_poly_trait_ref(context, a);
            self.MissingCopyImplementations.check_poly_trait_ref(context, a);
            self.PtrNullChecks.check_poly_trait_ref(context, a);
            self.MutableTransmutes.check_poly_trait_ref(context, a);
            self.TypeAliasBounds.check_poly_trait_ref(context, a);
            self.TrivialConstraints.check_poly_trait_ref(context, a);
            self.TypeLimits.check_poly_trait_ref(context, a);
            self.NonSnakeCase.check_poly_trait_ref(context, a);
            self.InvalidNoMangleItems.check_poly_trait_ref(context, a);
            self.UnreachablePub.check_poly_trait_ref(context, a);
            self.ExplicitOutlivesRequirements.check_poly_trait_ref(context,
                a);
            self.InvalidValue.check_poly_trait_ref(context, a);
            self.DerefNullPtr.check_poly_trait_ref(context, a);
            self.UnstableFeatures.check_poly_trait_ref(context, a);
            self.UngatedAsyncFnTrackCaller.check_poly_trait_ref(context, a);
            self.ShadowedIntoIter.check_poly_trait_ref(context, a);
            self.DropTraitConstraints.check_poly_trait_ref(context, a);
            self.DanglingPointers.check_poly_trait_ref(context, a);
            self.NonPanicFmt.check_poly_trait_ref(context, a);
            self.NoopMethodCall.check_poly_trait_ref(context, a);
            self.EnumIntrinsicsNonEnums.check_poly_trait_ref(context, a);
            self.InvalidAtomicOrdering.check_poly_trait_ref(context, a);
            self.AsmLabels.check_poly_trait_ref(context, a);
            self.OpaqueHiddenInferredBound.check_poly_trait_ref(context, a);
            self.MultipleSupertraitUpcastable.check_poly_trait_ref(context,
                a);
            self.MapUnitFn.check_poly_trait_ref(context, a);
            self.MissingDebugImplementations.check_poly_trait_ref(context, a);
            self.MissingDoc.check_poly_trait_ref(context, a);
            self.AsyncClosureUsage.check_poly_trait_ref(context, a);
            self.AsyncFnInTrait.check_poly_trait_ref(context, a);
            self.NonLocalDefinitions.check_poly_trait_ref(context, a);
            self.InteriorMutableConsts.check_poly_trait_ref(context, a);
            self.ImplTraitOvercaptures.check_poly_trait_ref(context, a);
            self.IfLetRescope.check_poly_trait_ref(context, a);
            self.StaticMutRefs.check_poly_trait_ref(context, a);
            self.UnqualifiedLocalImports.check_poly_trait_ref(context, a);
            self.FunctionCastsAsInteger.check_poly_trait_ref(context, a);
            self.CheckTransmutes.check_poly_trait_ref(context, a);
            self.LifetimeSyntax.check_poly_trait_ref(context, a);
        };
    }
    fn check_fn(&mut self, context: &crate::LateContext<'tcx>,
        a: rustc_hir::intravisit::FnKind<'tcx>,
        b: &'tcx rustc_hir::FnDecl<'tcx>, c: &'tcx rustc_hir::Body<'tcx>,
        d: rustc_span::Span, e: rustc_span::def_id::LocalDefId) {
        {
            self.ForLoopsOverFallibles.check_fn(context, a, b, c, d, e);
            self.DefaultCouldBeDerived.check_fn(context, a, b, c, d, e);
            self.DerefIntoDynSupertrait.check_fn(context, a, b, c, d, e);
            self.DropForgetUseless.check_fn(context, a, b, c, d, e);
            self.ImproperCTypesLint.check_fn(context, a, b, c, d, e);
            self.ImproperGpuKernelLint.check_fn(context, a, b, c, d, e);
            self.InvalidFromUtf8.check_fn(context, a, b, c, d, e);
            self.VariantSizeDifferences.check_fn(context, a, b, c, d, e);
            self.PathStatements.check_fn(context, a, b, c, d, e);
            self.LetUnderscore.check_fn(context, a, b, c, d, e);
            self.InvalidReferenceCasting.check_fn(context, a, b, c, d, e);
            self.ImplicitAutorefs.check_fn(context, a, b, c, d, e);
            self.UnusedResults.check_fn(context, a, b, c, d, e);
            self.UnitBindings.check_fn(context, a, b, c, d, e);
            self.NonUpperCaseGlobals.check_fn(context, a, b, c, d, e);
            self.NonShorthandFieldPatterns.check_fn(context, a, b, c, d, e);
            self.UnusedAllocation.check_fn(context, a, b, c, d, e);
            self.MissingCopyImplementations.check_fn(context, a, b, c, d, e);
            self.PtrNullChecks.check_fn(context, a, b, c, d, e);
            self.MutableTransmutes.check_fn(context, a, b, c, d, e);
            self.TypeAliasBounds.check_fn(context, a, b, c, d, e);
            self.TrivialConstraints.check_fn(context, a, b, c, d, e);
            self.TypeLimits.check_fn(context, a, b, c, d, e);
            self.NonSnakeCase.check_fn(context, a, b, c, d, e);
            self.InvalidNoMangleItems.check_fn(context, a, b, c, d, e);
            self.UnreachablePub.check_fn(context, a, b, c, d, e);
            self.ExplicitOutlivesRequirements.check_fn(context, a, b, c, d,
                e);
            self.InvalidValue.check_fn(context, a, b, c, d, e);
            self.DerefNullPtr.check_fn(context, a, b, c, d, e);
            self.UnstableFeatures.check_fn(context, a, b, c, d, e);
            self.UngatedAsyncFnTrackCaller.check_fn(context, a, b, c, d, e);
            self.ShadowedIntoIter.check_fn(context, a, b, c, d, e);
            self.DropTraitConstraints.check_fn(context, a, b, c, d, e);
            self.DanglingPointers.check_fn(context, a, b, c, d, e);
            self.NonPanicFmt.check_fn(context, a, b, c, d, e);
            self.NoopMethodCall.check_fn(context, a, b, c, d, e);
            self.EnumIntrinsicsNonEnums.check_fn(context, a, b, c, d, e);
            self.InvalidAtomicOrdering.check_fn(context, a, b, c, d, e);
            self.AsmLabels.check_fn(context, a, b, c, d, e);
            self.OpaqueHiddenInferredBound.check_fn(context, a, b, c, d, e);
            self.MultipleSupertraitUpcastable.check_fn(context, a, b, c, d,
                e);
            self.MapUnitFn.check_fn(context, a, b, c, d, e);
            self.MissingDebugImplementations.check_fn(context, a, b, c, d, e);
            self.MissingDoc.check_fn(context, a, b, c, d, e);
            self.AsyncClosureUsage.check_fn(context, a, b, c, d, e);
            self.AsyncFnInTrait.check_fn(context, a, b, c, d, e);
            self.NonLocalDefinitions.check_fn(context, a, b, c, d, e);
            self.InteriorMutableConsts.check_fn(context, a, b, c, d, e);
            self.ImplTraitOvercaptures.check_fn(context, a, b, c, d, e);
            self.IfLetRescope.check_fn(context, a, b, c, d, e);
            self.StaticMutRefs.check_fn(context, a, b, c, d, e);
            self.UnqualifiedLocalImports.check_fn(context, a, b, c, d, e);
            self.FunctionCastsAsInteger.check_fn(context, a, b, c, d, e);
            self.CheckTransmutes.check_fn(context, a, b, c, d, e);
            self.LifetimeSyntax.check_fn(context, a, b, c, d, e);
        };
    }
    fn check_trait_item(&mut self, context: &crate::LateContext<'tcx>,
        a: &'tcx rustc_hir::TraitItem<'tcx>) {
        {
            self.ForLoopsOverFallibles.check_trait_item(context, a);
            self.DefaultCouldBeDerived.check_trait_item(context, a);
            self.DerefIntoDynSupertrait.check_trait_item(context, a);
            self.DropForgetUseless.check_trait_item(context, a);
            self.ImproperCTypesLint.check_trait_item(context, a);
            self.ImproperGpuKernelLint.check_trait_item(context, a);
            self.InvalidFromUtf8.check_trait_item(context, a);
            self.VariantSizeDifferences.check_trait_item(context, a);
            self.PathStatements.check_trait_item(context, a);
            self.LetUnderscore.check_trait_item(context, a);
            self.InvalidReferenceCasting.check_trait_item(context, a);
            self.ImplicitAutorefs.check_trait_item(context, a);
            self.UnusedResults.check_trait_item(context, a);
            self.UnitBindings.check_trait_item(context, a);
            self.NonUpperCaseGlobals.check_trait_item(context, a);
            self.NonShorthandFieldPatterns.check_trait_item(context, a);
            self.UnusedAllocation.check_trait_item(context, a);
            self.MissingCopyImplementations.check_trait_item(context, a);
            self.PtrNullChecks.check_trait_item(context, a);
            self.MutableTransmutes.check_trait_item(context, a);
            self.TypeAliasBounds.check_trait_item(context, a);
            self.TrivialConstraints.check_trait_item(context, a);
            self.TypeLimits.check_trait_item(context, a);
            self.NonSnakeCase.check_trait_item(context, a);
            self.InvalidNoMangleItems.check_trait_item(context, a);
            self.UnreachablePub.check_trait_item(context, a);
            self.ExplicitOutlivesRequirements.check_trait_item(context, a);
            self.InvalidValue.check_trait_item(context, a);
            self.DerefNullPtr.check_trait_item(context, a);
            self.UnstableFeatures.check_trait_item(context, a);
            self.UngatedAsyncFnTrackCaller.check_trait_item(context, a);
            self.ShadowedIntoIter.check_trait_item(context, a);
            self.DropTraitConstraints.check_trait_item(context, a);
            self.DanglingPointers.check_trait_item(context, a);
            self.NonPanicFmt.check_trait_item(context, a);
            self.NoopMethodCall.check_trait_item(context, a);
            self.EnumIntrinsicsNonEnums.check_trait_item(context, a);
            self.InvalidAtomicOrdering.check_trait_item(context, a);
            self.AsmLabels.check_trait_item(context, a);
            self.OpaqueHiddenInferredBound.check_trait_item(context, a);
            self.MultipleSupertraitUpcastable.check_trait_item(context, a);
            self.MapUnitFn.check_trait_item(context, a);
            self.MissingDebugImplementations.check_trait_item(context, a);
            self.MissingDoc.check_trait_item(context, a);
            self.AsyncClosureUsage.check_trait_item(context, a);
            self.AsyncFnInTrait.check_trait_item(context, a);
            self.NonLocalDefinitions.check_trait_item(context, a);
            self.InteriorMutableConsts.check_trait_item(context, a);
            self.ImplTraitOvercaptures.check_trait_item(context, a);
            self.IfLetRescope.check_trait_item(context, a);
            self.StaticMutRefs.check_trait_item(context, a);
            self.UnqualifiedLocalImports.check_trait_item(context, a);
            self.FunctionCastsAsInteger.check_trait_item(context, a);
            self.CheckTransmutes.check_trait_item(context, a);
            self.LifetimeSyntax.check_trait_item(context, a);
        };
    }
    fn check_impl_item(&mut self, context: &crate::LateContext<'tcx>,
        a: &'tcx rustc_hir::ImplItem<'tcx>) {
        {
            self.ForLoopsOverFallibles.check_impl_item(context, a);
            self.DefaultCouldBeDerived.check_impl_item(context, a);
            self.DerefIntoDynSupertrait.check_impl_item(context, a);
            self.DropForgetUseless.check_impl_item(context, a);
            self.ImproperCTypesLint.check_impl_item(context, a);
            self.ImproperGpuKernelLint.check_impl_item(context, a);
            self.InvalidFromUtf8.check_impl_item(context, a);
            self.VariantSizeDifferences.check_impl_item(context, a);
            self.PathStatements.check_impl_item(context, a);
            self.LetUnderscore.check_impl_item(context, a);
            self.InvalidReferenceCasting.check_impl_item(context, a);
            self.ImplicitAutorefs.check_impl_item(context, a);
            self.UnusedResults.check_impl_item(context, a);
            self.UnitBindings.check_impl_item(context, a);
            self.NonUpperCaseGlobals.check_impl_item(context, a);
            self.NonShorthandFieldPatterns.check_impl_item(context, a);
            self.UnusedAllocation.check_impl_item(context, a);
            self.MissingCopyImplementations.check_impl_item(context, a);
            self.PtrNullChecks.check_impl_item(context, a);
            self.MutableTransmutes.check_impl_item(context, a);
            self.TypeAliasBounds.check_impl_item(context, a);
            self.TrivialConstraints.check_impl_item(context, a);
            self.TypeLimits.check_impl_item(context, a);
            self.NonSnakeCase.check_impl_item(context, a);
            self.InvalidNoMangleItems.check_impl_item(context, a);
            self.UnreachablePub.check_impl_item(context, a);
            self.ExplicitOutlivesRequirements.check_impl_item(context, a);
            self.InvalidValue.check_impl_item(context, a);
            self.DerefNullPtr.check_impl_item(context, a);
            self.UnstableFeatures.check_impl_item(context, a);
            self.UngatedAsyncFnTrackCaller.check_impl_item(context, a);
            self.ShadowedIntoIter.check_impl_item(context, a);
            self.DropTraitConstraints.check_impl_item(context, a);
            self.DanglingPointers.check_impl_item(context, a);
            self.NonPanicFmt.check_impl_item(context, a);
            self.NoopMethodCall.check_impl_item(context, a);
            self.EnumIntrinsicsNonEnums.check_impl_item(context, a);
            self.InvalidAtomicOrdering.check_impl_item(context, a);
            self.AsmLabels.check_impl_item(context, a);
            self.OpaqueHiddenInferredBound.check_impl_item(context, a);
            self.MultipleSupertraitUpcastable.check_impl_item(context, a);
            self.MapUnitFn.check_impl_item(context, a);
            self.MissingDebugImplementations.check_impl_item(context, a);
            self.MissingDoc.check_impl_item(context, a);
            self.AsyncClosureUsage.check_impl_item(context, a);
            self.AsyncFnInTrait.check_impl_item(context, a);
            self.NonLocalDefinitions.check_impl_item(context, a);
            self.InteriorMutableConsts.check_impl_item(context, a);
            self.ImplTraitOvercaptures.check_impl_item(context, a);
            self.IfLetRescope.check_impl_item(context, a);
            self.StaticMutRefs.check_impl_item(context, a);
            self.UnqualifiedLocalImports.check_impl_item(context, a);
            self.FunctionCastsAsInteger.check_impl_item(context, a);
            self.CheckTransmutes.check_impl_item(context, a);
            self.LifetimeSyntax.check_impl_item(context, a);
        };
    }
    fn check_impl_item_post(&mut self, context: &crate::LateContext<'tcx>,
        a: &'tcx rustc_hir::ImplItem<'tcx>) {
        {
            self.ForLoopsOverFallibles.check_impl_item_post(context, a);
            self.DefaultCouldBeDerived.check_impl_item_post(context, a);
            self.DerefIntoDynSupertrait.check_impl_item_post(context, a);
            self.DropForgetUseless.check_impl_item_post(context, a);
            self.ImproperCTypesLint.check_impl_item_post(context, a);
            self.ImproperGpuKernelLint.check_impl_item_post(context, a);
            self.InvalidFromUtf8.check_impl_item_post(context, a);
            self.VariantSizeDifferences.check_impl_item_post(context, a);
            self.PathStatements.check_impl_item_post(context, a);
            self.LetUnderscore.check_impl_item_post(context, a);
            self.InvalidReferenceCasting.check_impl_item_post(context, a);
            self.ImplicitAutorefs.check_impl_item_post(context, a);
            self.UnusedResults.check_impl_item_post(context, a);
            self.UnitBindings.check_impl_item_post(context, a);
            self.NonUpperCaseGlobals.check_impl_item_post(context, a);
            self.NonShorthandFieldPatterns.check_impl_item_post(context, a);
            self.UnusedAllocation.check_impl_item_post(context, a);
            self.MissingCopyImplementations.check_impl_item_post(context, a);
            self.PtrNullChecks.check_impl_item_post(context, a);
            self.MutableTransmutes.check_impl_item_post(context, a);
            self.TypeAliasBounds.check_impl_item_post(context, a);
            self.TrivialConstraints.check_impl_item_post(context, a);
            self.TypeLimits.check_impl_item_post(context, a);
            self.NonSnakeCase.check_impl_item_post(context, a);
            self.InvalidNoMangleItems.check_impl_item_post(context, a);
            self.UnreachablePub.check_impl_item_post(context, a);
            self.ExplicitOutlivesRequirements.check_impl_item_post(context,
                a);
            self.InvalidValue.check_impl_item_post(context, a);
            self.DerefNullPtr.check_impl_item_post(context, a);
            self.UnstableFeatures.check_impl_item_post(context, a);
            self.UngatedAsyncFnTrackCaller.check_impl_item_post(context, a);
            self.ShadowedIntoIter.check_impl_item_post(context, a);
            self.DropTraitConstraints.check_impl_item_post(context, a);
            self.DanglingPointers.check_impl_item_post(context, a);
            self.NonPanicFmt.check_impl_item_post(context, a);
            self.NoopMethodCall.check_impl_item_post(context, a);
            self.EnumIntrinsicsNonEnums.check_impl_item_post(context, a);
            self.InvalidAtomicOrdering.check_impl_item_post(context, a);
            self.AsmLabels.check_impl_item_post(context, a);
            self.OpaqueHiddenInferredBound.check_impl_item_post(context, a);
            self.MultipleSupertraitUpcastable.check_impl_item_post(context,
                a);
            self.MapUnitFn.check_impl_item_post(context, a);
            self.MissingDebugImplementations.check_impl_item_post(context, a);
            self.MissingDoc.check_impl_item_post(context, a);
            self.AsyncClosureUsage.check_impl_item_post(context, a);
            self.AsyncFnInTrait.check_impl_item_post(context, a);
            self.NonLocalDefinitions.check_impl_item_post(context, a);
            self.InteriorMutableConsts.check_impl_item_post(context, a);
            self.ImplTraitOvercaptures.check_impl_item_post(context, a);
            self.IfLetRescope.check_impl_item_post(context, a);
            self.StaticMutRefs.check_impl_item_post(context, a);
            self.UnqualifiedLocalImports.check_impl_item_post(context, a);
            self.FunctionCastsAsInteger.check_impl_item_post(context, a);
            self.CheckTransmutes.check_impl_item_post(context, a);
            self.LifetimeSyntax.check_impl_item_post(context, a);
        };
    }
    fn check_struct_def(&mut self, context: &crate::LateContext<'tcx>,
        a: &'tcx rustc_hir::VariantData<'tcx>) {
        {
            self.ForLoopsOverFallibles.check_struct_def(context, a);
            self.DefaultCouldBeDerived.check_struct_def(context, a);
            self.DerefIntoDynSupertrait.check_struct_def(context, a);
            self.DropForgetUseless.check_struct_def(context, a);
            self.ImproperCTypesLint.check_struct_def(context, a);
            self.ImproperGpuKernelLint.check_struct_def(context, a);
            self.InvalidFromUtf8.check_struct_def(context, a);
            self.VariantSizeDifferences.check_struct_def(context, a);
            self.PathStatements.check_struct_def(context, a);
            self.LetUnderscore.check_struct_def(context, a);
            self.InvalidReferenceCasting.check_struct_def(context, a);
            self.ImplicitAutorefs.check_struct_def(context, a);
            self.UnusedResults.check_struct_def(context, a);
            self.UnitBindings.check_struct_def(context, a);
            self.NonUpperCaseGlobals.check_struct_def(context, a);
            self.NonShorthandFieldPatterns.check_struct_def(context, a);
            self.UnusedAllocation.check_struct_def(context, a);
            self.MissingCopyImplementations.check_struct_def(context, a);
            self.PtrNullChecks.check_struct_def(context, a);
            self.MutableTransmutes.check_struct_def(context, a);
            self.TypeAliasBounds.check_struct_def(context, a);
            self.TrivialConstraints.check_struct_def(context, a);
            self.TypeLimits.check_struct_def(context, a);
            self.NonSnakeCase.check_struct_def(context, a);
            self.InvalidNoMangleItems.check_struct_def(context, a);
            self.UnreachablePub.check_struct_def(context, a);
            self.ExplicitOutlivesRequirements.check_struct_def(context, a);
            self.InvalidValue.check_struct_def(context, a);
            self.DerefNullPtr.check_struct_def(context, a);
            self.UnstableFeatures.check_struct_def(context, a);
            self.UngatedAsyncFnTrackCaller.check_struct_def(context, a);
            self.ShadowedIntoIter.check_struct_def(context, a);
            self.DropTraitConstraints.check_struct_def(context, a);
            self.DanglingPointers.check_struct_def(context, a);
            self.NonPanicFmt.check_struct_def(context, a);
            self.NoopMethodCall.check_struct_def(context, a);
            self.EnumIntrinsicsNonEnums.check_struct_def(context, a);
            self.InvalidAtomicOrdering.check_struct_def(context, a);
            self.AsmLabels.check_struct_def(context, a);
            self.OpaqueHiddenInferredBound.check_struct_def(context, a);
            self.MultipleSupertraitUpcastable.check_struct_def(context, a);
            self.MapUnitFn.check_struct_def(context, a);
            self.MissingDebugImplementations.check_struct_def(context, a);
            self.MissingDoc.check_struct_def(context, a);
            self.AsyncClosureUsage.check_struct_def(context, a);
            self.AsyncFnInTrait.check_struct_def(context, a);
            self.NonLocalDefinitions.check_struct_def(context, a);
            self.InteriorMutableConsts.check_struct_def(context, a);
            self.ImplTraitOvercaptures.check_struct_def(context, a);
            self.IfLetRescope.check_struct_def(context, a);
            self.StaticMutRefs.check_struct_def(context, a);
            self.UnqualifiedLocalImports.check_struct_def(context, a);
            self.FunctionCastsAsInteger.check_struct_def(context, a);
            self.CheckTransmutes.check_struct_def(context, a);
            self.LifetimeSyntax.check_struct_def(context, a);
        };
    }
    fn check_field_def(&mut self, context: &crate::LateContext<'tcx>,
        a: &'tcx rustc_hir::FieldDef<'tcx>) {
        {
            self.ForLoopsOverFallibles.check_field_def(context, a);
            self.DefaultCouldBeDerived.check_field_def(context, a);
            self.DerefIntoDynSupertrait.check_field_def(context, a);
            self.DropForgetUseless.check_field_def(context, a);
            self.ImproperCTypesLint.check_field_def(context, a);
            self.ImproperGpuKernelLint.check_field_def(context, a);
            self.InvalidFromUtf8.check_field_def(context, a);
            self.VariantSizeDifferences.check_field_def(context, a);
            self.PathStatements.check_field_def(context, a);
            self.LetUnderscore.check_field_def(context, a);
            self.InvalidReferenceCasting.check_field_def(context, a);
            self.ImplicitAutorefs.check_field_def(context, a);
            self.UnusedResults.check_field_def(context, a);
            self.UnitBindings.check_field_def(context, a);
            self.NonUpperCaseGlobals.check_field_def(context, a);
            self.NonShorthandFieldPatterns.check_field_def(context, a);
            self.UnusedAllocation.check_field_def(context, a);
            self.MissingCopyImplementations.check_field_def(context, a);
            self.PtrNullChecks.check_field_def(context, a);
            self.MutableTransmutes.check_field_def(context, a);
            self.TypeAliasBounds.check_field_def(context, a);
            self.TrivialConstraints.check_field_def(context, a);
            self.TypeLimits.check_field_def(context, a);
            self.NonSnakeCase.check_field_def(context, a);
            self.InvalidNoMangleItems.check_field_def(context, a);
            self.UnreachablePub.check_field_def(context, a);
            self.ExplicitOutlivesRequirements.check_field_def(context, a);
            self.InvalidValue.check_field_def(context, a);
            self.DerefNullPtr.check_field_def(context, a);
            self.UnstableFeatures.check_field_def(context, a);
            self.UngatedAsyncFnTrackCaller.check_field_def(context, a);
            self.ShadowedIntoIter.check_field_def(context, a);
            self.DropTraitConstraints.check_field_def(context, a);
            self.DanglingPointers.check_field_def(context, a);
            self.NonPanicFmt.check_field_def(context, a);
            self.NoopMethodCall.check_field_def(context, a);
            self.EnumIntrinsicsNonEnums.check_field_def(context, a);
            self.InvalidAtomicOrdering.check_field_def(context, a);
            self.AsmLabels.check_field_def(context, a);
            self.OpaqueHiddenInferredBound.check_field_def(context, a);
            self.MultipleSupertraitUpcastable.check_field_def(context, a);
            self.MapUnitFn.check_field_def(context, a);
            self.MissingDebugImplementations.check_field_def(context, a);
            self.MissingDoc.check_field_def(context, a);
            self.AsyncClosureUsage.check_field_def(context, a);
            self.AsyncFnInTrait.check_field_def(context, a);
            self.NonLocalDefinitions.check_field_def(context, a);
            self.InteriorMutableConsts.check_field_def(context, a);
            self.ImplTraitOvercaptures.check_field_def(context, a);
            self.IfLetRescope.check_field_def(context, a);
            self.StaticMutRefs.check_field_def(context, a);
            self.UnqualifiedLocalImports.check_field_def(context, a);
            self.FunctionCastsAsInteger.check_field_def(context, a);
            self.CheckTransmutes.check_field_def(context, a);
            self.LifetimeSyntax.check_field_def(context, a);
        };
    }
    fn check_variant(&mut self, context: &crate::LateContext<'tcx>,
        a: &'tcx rustc_hir::Variant<'tcx>) {
        {
            self.ForLoopsOverFallibles.check_variant(context, a);
            self.DefaultCouldBeDerived.check_variant(context, a);
            self.DerefIntoDynSupertrait.check_variant(context, a);
            self.DropForgetUseless.check_variant(context, a);
            self.ImproperCTypesLint.check_variant(context, a);
            self.ImproperGpuKernelLint.check_variant(context, a);
            self.InvalidFromUtf8.check_variant(context, a);
            self.VariantSizeDifferences.check_variant(context, a);
            self.PathStatements.check_variant(context, a);
            self.LetUnderscore.check_variant(context, a);
            self.InvalidReferenceCasting.check_variant(context, a);
            self.ImplicitAutorefs.check_variant(context, a);
            self.UnusedResults.check_variant(context, a);
            self.UnitBindings.check_variant(context, a);
            self.NonUpperCaseGlobals.check_variant(context, a);
            self.NonShorthandFieldPatterns.check_variant(context, a);
            self.UnusedAllocation.check_variant(context, a);
            self.MissingCopyImplementations.check_variant(context, a);
            self.PtrNullChecks.check_variant(context, a);
            self.MutableTransmutes.check_variant(context, a);
            self.TypeAliasBounds.check_variant(context, a);
            self.TrivialConstraints.check_variant(context, a);
            self.TypeLimits.check_variant(context, a);
            self.NonSnakeCase.check_variant(context, a);
            self.InvalidNoMangleItems.check_variant(context, a);
            self.UnreachablePub.check_variant(context, a);
            self.ExplicitOutlivesRequirements.check_variant(context, a);
            self.InvalidValue.check_variant(context, a);
            self.DerefNullPtr.check_variant(context, a);
            self.UnstableFeatures.check_variant(context, a);
            self.UngatedAsyncFnTrackCaller.check_variant(context, a);
            self.ShadowedIntoIter.check_variant(context, a);
            self.DropTraitConstraints.check_variant(context, a);
            self.DanglingPointers.check_variant(context, a);
            self.NonPanicFmt.check_variant(context, a);
            self.NoopMethodCall.check_variant(context, a);
            self.EnumIntrinsicsNonEnums.check_variant(context, a);
            self.InvalidAtomicOrdering.check_variant(context, a);
            self.AsmLabels.check_variant(context, a);
            self.OpaqueHiddenInferredBound.check_variant(context, a);
            self.MultipleSupertraitUpcastable.check_variant(context, a);
            self.MapUnitFn.check_variant(context, a);
            self.MissingDebugImplementations.check_variant(context, a);
            self.MissingDoc.check_variant(context, a);
            self.AsyncClosureUsage.check_variant(context, a);
            self.AsyncFnInTrait.check_variant(context, a);
            self.NonLocalDefinitions.check_variant(context, a);
            self.InteriorMutableConsts.check_variant(context, a);
            self.ImplTraitOvercaptures.check_variant(context, a);
            self.IfLetRescope.check_variant(context, a);
            self.StaticMutRefs.check_variant(context, a);
            self.UnqualifiedLocalImports.check_variant(context, a);
            self.FunctionCastsAsInteger.check_variant(context, a);
            self.CheckTransmutes.check_variant(context, a);
            self.LifetimeSyntax.check_variant(context, a);
        };
    }
    fn check_path(&mut self, context: &crate::LateContext<'tcx>,
        a: &rustc_hir::Path<'tcx>, b: rustc_hir::HirId) {
        {
            self.ForLoopsOverFallibles.check_path(context, a, b);
            self.DefaultCouldBeDerived.check_path(context, a, b);
            self.DerefIntoDynSupertrait.check_path(context, a, b);
            self.DropForgetUseless.check_path(context, a, b);
            self.ImproperCTypesLint.check_path(context, a, b);
            self.ImproperGpuKernelLint.check_path(context, a, b);
            self.InvalidFromUtf8.check_path(context, a, b);
            self.VariantSizeDifferences.check_path(context, a, b);
            self.PathStatements.check_path(context, a, b);
            self.LetUnderscore.check_path(context, a, b);
            self.InvalidReferenceCasting.check_path(context, a, b);
            self.ImplicitAutorefs.check_path(context, a, b);
            self.UnusedResults.check_path(context, a, b);
            self.UnitBindings.check_path(context, a, b);
            self.NonUpperCaseGlobals.check_path(context, a, b);
            self.NonShorthandFieldPatterns.check_path(context, a, b);
            self.UnusedAllocation.check_path(context, a, b);
            self.MissingCopyImplementations.check_path(context, a, b);
            self.PtrNullChecks.check_path(context, a, b);
            self.MutableTransmutes.check_path(context, a, b);
            self.TypeAliasBounds.check_path(context, a, b);
            self.TrivialConstraints.check_path(context, a, b);
            self.TypeLimits.check_path(context, a, b);
            self.NonSnakeCase.check_path(context, a, b);
            self.InvalidNoMangleItems.check_path(context, a, b);
            self.UnreachablePub.check_path(context, a, b);
            self.ExplicitOutlivesRequirements.check_path(context, a, b);
            self.InvalidValue.check_path(context, a, b);
            self.DerefNullPtr.check_path(context, a, b);
            self.UnstableFeatures.check_path(context, a, b);
            self.UngatedAsyncFnTrackCaller.check_path(context, a, b);
            self.ShadowedIntoIter.check_path(context, a, b);
            self.DropTraitConstraints.check_path(context, a, b);
            self.DanglingPointers.check_path(context, a, b);
            self.NonPanicFmt.check_path(context, a, b);
            self.NoopMethodCall.check_path(context, a, b);
            self.EnumIntrinsicsNonEnums.check_path(context, a, b);
            self.InvalidAtomicOrdering.check_path(context, a, b);
            self.AsmLabels.check_path(context, a, b);
            self.OpaqueHiddenInferredBound.check_path(context, a, b);
            self.MultipleSupertraitUpcastable.check_path(context, a, b);
            self.MapUnitFn.check_path(context, a, b);
            self.MissingDebugImplementations.check_path(context, a, b);
            self.MissingDoc.check_path(context, a, b);
            self.AsyncClosureUsage.check_path(context, a, b);
            self.AsyncFnInTrait.check_path(context, a, b);
            self.NonLocalDefinitions.check_path(context, a, b);
            self.InteriorMutableConsts.check_path(context, a, b);
            self.ImplTraitOvercaptures.check_path(context, a, b);
            self.IfLetRescope.check_path(context, a, b);
            self.StaticMutRefs.check_path(context, a, b);
            self.UnqualifiedLocalImports.check_path(context, a, b);
            self.FunctionCastsAsInteger.check_path(context, a, b);
            self.CheckTransmutes.check_path(context, a, b);
            self.LifetimeSyntax.check_path(context, a, b);
        };
    }
    fn check_attribute(&mut self, context: &crate::LateContext<'tcx>,
        a: &'tcx rustc_hir::Attribute) {
        {
            self.ForLoopsOverFallibles.check_attribute(context, a);
            self.DefaultCouldBeDerived.check_attribute(context, a);
            self.DerefIntoDynSupertrait.check_attribute(context, a);
            self.DropForgetUseless.check_attribute(context, a);
            self.ImproperCTypesLint.check_attribute(context, a);
            self.ImproperGpuKernelLint.check_attribute(context, a);
            self.InvalidFromUtf8.check_attribute(context, a);
            self.VariantSizeDifferences.check_attribute(context, a);
            self.PathStatements.check_attribute(context, a);
            self.LetUnderscore.check_attribute(context, a);
            self.InvalidReferenceCasting.check_attribute(context, a);
            self.ImplicitAutorefs.check_attribute(context, a);
            self.UnusedResults.check_attribute(context, a);
            self.UnitBindings.check_attribute(context, a);
            self.NonUpperCaseGlobals.check_attribute(context, a);
            self.NonShorthandFieldPatterns.check_attribute(context, a);
            self.UnusedAllocation.check_attribute(context, a);
            self.MissingCopyImplementations.check_attribute(context, a);
            self.PtrNullChecks.check_attribute(context, a);
            self.MutableTransmutes.check_attribute(context, a);
            self.TypeAliasBounds.check_attribute(context, a);
            self.TrivialConstraints.check_attribute(context, a);
            self.TypeLimits.check_attribute(context, a);
            self.NonSnakeCase.check_attribute(context, a);
            self.InvalidNoMangleItems.check_attribute(context, a);
            self.UnreachablePub.check_attribute(context, a);
            self.ExplicitOutlivesRequirements.check_attribute(context, a);
            self.InvalidValue.check_attribute(context, a);
            self.DerefNullPtr.check_attribute(context, a);
            self.UnstableFeatures.check_attribute(context, a);
            self.UngatedAsyncFnTrackCaller.check_attribute(context, a);
            self.ShadowedIntoIter.check_attribute(context, a);
            self.DropTraitConstraints.check_attribute(context, a);
            self.DanglingPointers.check_attribute(context, a);
            self.NonPanicFmt.check_attribute(context, a);
            self.NoopMethodCall.check_attribute(context, a);
            self.EnumIntrinsicsNonEnums.check_attribute(context, a);
            self.InvalidAtomicOrdering.check_attribute(context, a);
            self.AsmLabels.check_attribute(context, a);
            self.OpaqueHiddenInferredBound.check_attribute(context, a);
            self.MultipleSupertraitUpcastable.check_attribute(context, a);
            self.MapUnitFn.check_attribute(context, a);
            self.MissingDebugImplementations.check_attribute(context, a);
            self.MissingDoc.check_attribute(context, a);
            self.AsyncClosureUsage.check_attribute(context, a);
            self.AsyncFnInTrait.check_attribute(context, a);
            self.NonLocalDefinitions.check_attribute(context, a);
            self.InteriorMutableConsts.check_attribute(context, a);
            self.ImplTraitOvercaptures.check_attribute(context, a);
            self.IfLetRescope.check_attribute(context, a);
            self.StaticMutRefs.check_attribute(context, a);
            self.UnqualifiedLocalImports.check_attribute(context, a);
            self.FunctionCastsAsInteger.check_attribute(context, a);
            self.CheckTransmutes.check_attribute(context, a);
            self.LifetimeSyntax.check_attribute(context, a);
        };
    }
    fn check_attributes(&mut self, context: &crate::LateContext<'tcx>,
        a: &'tcx [rustc_hir::Attribute]) {
        {
            self.ForLoopsOverFallibles.check_attributes(context, a);
            self.DefaultCouldBeDerived.check_attributes(context, a);
            self.DerefIntoDynSupertrait.check_attributes(context, a);
            self.DropForgetUseless.check_attributes(context, a);
            self.ImproperCTypesLint.check_attributes(context, a);
            self.ImproperGpuKernelLint.check_attributes(context, a);
            self.InvalidFromUtf8.check_attributes(context, a);
            self.VariantSizeDifferences.check_attributes(context, a);
            self.PathStatements.check_attributes(context, a);
            self.LetUnderscore.check_attributes(context, a);
            self.InvalidReferenceCasting.check_attributes(context, a);
            self.ImplicitAutorefs.check_attributes(context, a);
            self.UnusedResults.check_attributes(context, a);
            self.UnitBindings.check_attributes(context, a);
            self.NonUpperCaseGlobals.check_attributes(context, a);
            self.NonShorthandFieldPatterns.check_attributes(context, a);
            self.UnusedAllocation.check_attributes(context, a);
            self.MissingCopyImplementations.check_attributes(context, a);
            self.PtrNullChecks.check_attributes(context, a);
            self.MutableTransmutes.check_attributes(context, a);
            self.TypeAliasBounds.check_attributes(context, a);
            self.TrivialConstraints.check_attributes(context, a);
            self.TypeLimits.check_attributes(context, a);
            self.NonSnakeCase.check_attributes(context, a);
            self.InvalidNoMangleItems.check_attributes(context, a);
            self.UnreachablePub.check_attributes(context, a);
            self.ExplicitOutlivesRequirements.check_attributes(context, a);
            self.InvalidValue.check_attributes(context, a);
            self.DerefNullPtr.check_attributes(context, a);
            self.UnstableFeatures.check_attributes(context, a);
            self.UngatedAsyncFnTrackCaller.check_attributes(context, a);
            self.ShadowedIntoIter.check_attributes(context, a);
            self.DropTraitConstraints.check_attributes(context, a);
            self.DanglingPointers.check_attributes(context, a);
            self.NonPanicFmt.check_attributes(context, a);
            self.NoopMethodCall.check_attributes(context, a);
            self.EnumIntrinsicsNonEnums.check_attributes(context, a);
            self.InvalidAtomicOrdering.check_attributes(context, a);
            self.AsmLabels.check_attributes(context, a);
            self.OpaqueHiddenInferredBound.check_attributes(context, a);
            self.MultipleSupertraitUpcastable.check_attributes(context, a);
            self.MapUnitFn.check_attributes(context, a);
            self.MissingDebugImplementations.check_attributes(context, a);
            self.MissingDoc.check_attributes(context, a);
            self.AsyncClosureUsage.check_attributes(context, a);
            self.AsyncFnInTrait.check_attributes(context, a);
            self.NonLocalDefinitions.check_attributes(context, a);
            self.InteriorMutableConsts.check_attributes(context, a);
            self.ImplTraitOvercaptures.check_attributes(context, a);
            self.IfLetRescope.check_attributes(context, a);
            self.StaticMutRefs.check_attributes(context, a);
            self.UnqualifiedLocalImports.check_attributes(context, a);
            self.FunctionCastsAsInteger.check_attributes(context, a);
            self.CheckTransmutes.check_attributes(context, a);
            self.LifetimeSyntax.check_attributes(context, a);
        };
    }
    fn check_attributes_post(&mut self, context: &crate::LateContext<'tcx>,
        a: &'tcx [rustc_hir::Attribute]) {
        {
            self.ForLoopsOverFallibles.check_attributes_post(context, a);
            self.DefaultCouldBeDerived.check_attributes_post(context, a);
            self.DerefIntoDynSupertrait.check_attributes_post(context, a);
            self.DropForgetUseless.check_attributes_post(context, a);
            self.ImproperCTypesLint.check_attributes_post(context, a);
            self.ImproperGpuKernelLint.check_attributes_post(context, a);
            self.InvalidFromUtf8.check_attributes_post(context, a);
            self.VariantSizeDifferences.check_attributes_post(context, a);
            self.PathStatements.check_attributes_post(context, a);
            self.LetUnderscore.check_attributes_post(context, a);
            self.InvalidReferenceCasting.check_attributes_post(context, a);
            self.ImplicitAutorefs.check_attributes_post(context, a);
            self.UnusedResults.check_attributes_post(context, a);
            self.UnitBindings.check_attributes_post(context, a);
            self.NonUpperCaseGlobals.check_attributes_post(context, a);
            self.NonShorthandFieldPatterns.check_attributes_post(context, a);
            self.UnusedAllocation.check_attributes_post(context, a);
            self.MissingCopyImplementations.check_attributes_post(context, a);
            self.PtrNullChecks.check_attributes_post(context, a);
            self.MutableTransmutes.check_attributes_post(context, a);
            self.TypeAliasBounds.check_attributes_post(context, a);
            self.TrivialConstraints.check_attributes_post(context, a);
            self.TypeLimits.check_attributes_post(context, a);
            self.NonSnakeCase.check_attributes_post(context, a);
            self.InvalidNoMangleItems.check_attributes_post(context, a);
            self.UnreachablePub.check_attributes_post(context, a);
            self.ExplicitOutlivesRequirements.check_attributes_post(context,
                a);
            self.InvalidValue.check_attributes_post(context, a);
            self.DerefNullPtr.check_attributes_post(context, a);
            self.UnstableFeatures.check_attributes_post(context, a);
            self.UngatedAsyncFnTrackCaller.check_attributes_post(context, a);
            self.ShadowedIntoIter.check_attributes_post(context, a);
            self.DropTraitConstraints.check_attributes_post(context, a);
            self.DanglingPointers.check_attributes_post(context, a);
            self.NonPanicFmt.check_attributes_post(context, a);
            self.NoopMethodCall.check_attributes_post(context, a);
            self.EnumIntrinsicsNonEnums.check_attributes_post(context, a);
            self.InvalidAtomicOrdering.check_attributes_post(context, a);
            self.AsmLabels.check_attributes_post(context, a);
            self.OpaqueHiddenInferredBound.check_attributes_post(context, a);
            self.MultipleSupertraitUpcastable.check_attributes_post(context,
                a);
            self.MapUnitFn.check_attributes_post(context, a);
            self.MissingDebugImplementations.check_attributes_post(context,
                a);
            self.MissingDoc.check_attributes_post(context, a);
            self.AsyncClosureUsage.check_attributes_post(context, a);
            self.AsyncFnInTrait.check_attributes_post(context, a);
            self.NonLocalDefinitions.check_attributes_post(context, a);
            self.InteriorMutableConsts.check_attributes_post(context, a);
            self.ImplTraitOvercaptures.check_attributes_post(context, a);
            self.IfLetRescope.check_attributes_post(context, a);
            self.StaticMutRefs.check_attributes_post(context, a);
            self.UnqualifiedLocalImports.check_attributes_post(context, a);
            self.FunctionCastsAsInteger.check_attributes_post(context, a);
            self.CheckTransmutes.check_attributes_post(context, a);
            self.LifetimeSyntax.check_attributes_post(context, a);
        };
    }
}
#[allow(rustc :: lint_pass_impl_without_macro)]
impl crate::LintPass for BuiltinCombinedModuleLateLintPass {
    fn name(&self) -> &'static str { "BuiltinCombinedModuleLateLintPass" }
    fn get_lints(&self) -> LintVec {
        BuiltinCombinedModuleLateLintPass::get_lints()
    }
}late_lint_methods!(
191    declare_combined_late_lint_pass,
192    [
193        BuiltinCombinedModuleLateLintPass,
194        [
195            ForLoopsOverFallibles: ForLoopsOverFallibles,
196            DefaultCouldBeDerived: DefaultCouldBeDerived,
197            DerefIntoDynSupertrait: DerefIntoDynSupertrait,
198            DropForgetUseless: DropForgetUseless,
199            ImproperCTypesLint: ImproperCTypesLint,
200            ImproperGpuKernelLint: ImproperGpuKernelLint,
201            InvalidFromUtf8: InvalidFromUtf8,
202            VariantSizeDifferences: VariantSizeDifferences,
203            PathStatements: PathStatements,
204            LetUnderscore: LetUnderscore,
205            InvalidReferenceCasting: InvalidReferenceCasting,
206            ImplicitAutorefs: ImplicitAutorefs,
207            // Depends on referenced function signatures in expressions
208            UnusedResults: UnusedResults,
209            UnitBindings: UnitBindings,
210            NonUpperCaseGlobals: NonUpperCaseGlobals,
211            NonShorthandFieldPatterns: NonShorthandFieldPatterns,
212            UnusedAllocation: UnusedAllocation,
213            // Depends on types used in type definitions
214            MissingCopyImplementations: MissingCopyImplementations,
215            // Depends on referenced function signatures in expressions
216            PtrNullChecks: PtrNullChecks,
217            MutableTransmutes: MutableTransmutes,
218            TypeAliasBounds: TypeAliasBounds,
219            TrivialConstraints: TrivialConstraints,
220            TypeLimits: TypeLimits::new(),
221            NonSnakeCase: NonSnakeCase,
222            InvalidNoMangleItems: InvalidNoMangleItems,
223            // Depends on effective visibilities
224            UnreachablePub: UnreachablePub,
225            ExplicitOutlivesRequirements: ExplicitOutlivesRequirements,
226            InvalidValue: InvalidValue,
227            DerefNullPtr: DerefNullPtr,
228            UnstableFeatures: UnstableFeatures,
229            UngatedAsyncFnTrackCaller: UngatedAsyncFnTrackCaller,
230            ShadowedIntoIter: ShadowedIntoIter,
231            DropTraitConstraints: DropTraitConstraints,
232            DanglingPointers: DanglingPointers,
233            NonPanicFmt: NonPanicFmt,
234            NoopMethodCall: NoopMethodCall,
235            EnumIntrinsicsNonEnums: EnumIntrinsicsNonEnums,
236            InvalidAtomicOrdering: InvalidAtomicOrdering,
237            AsmLabels: AsmLabels,
238            OpaqueHiddenInferredBound: OpaqueHiddenInferredBound,
239            MultipleSupertraitUpcastable: MultipleSupertraitUpcastable,
240            MapUnitFn: MapUnitFn,
241            MissingDebugImplementations: MissingDebugImplementations,
242            MissingDoc: MissingDoc,
243            AsyncClosureUsage: AsyncClosureUsage,
244            AsyncFnInTrait: AsyncFnInTrait,
245            NonLocalDefinitions: NonLocalDefinitions::default(),
246            InteriorMutableConsts: InteriorMutableConsts,
247            ImplTraitOvercaptures: ImplTraitOvercaptures,
248            IfLetRescope: IfLetRescope::default(),
249            StaticMutRefs: StaticMutRefs,
250            UnqualifiedLocalImports: UnqualifiedLocalImports,
251            FunctionCastsAsInteger: FunctionCastsAsInteger,
252            CheckTransmutes: CheckTransmutes,
253            LifetimeSyntax: LifetimeSyntax,
254        ]
255    ]
256);
257
258pub fn new_lint_store(internal_lints: bool) -> LintStore {
259    let mut lint_store = LintStore::new();
260
261    register_builtins(&mut lint_store);
262    if internal_lints {
263        register_internals(&mut lint_store);
264    }
265
266    lint_store
267}
268
269/// Tell the `LintStore` about all the built-in lints (the ones
270/// defined in this crate and the ones defined in
271/// `rustc_session::lint::builtin`).
272fn register_builtins(store: &mut LintStore) {
273    macro_rules! add_lint_group {
274        ($name:expr, $($lint:ident),*) => (
275            store.register_group(false, $name, None, vec![$(LintId::of($lint)),*]);
276        )
277    }
278
279    store.register_lints(&BuiltinCombinedPreExpansionLintPass::get_lints());
280    store.register_lints(&BuiltinCombinedEarlyLintPass::get_lints());
281    store.register_lints(&BuiltinCombinedModuleLateLintPass::get_lints());
282    store.register_lints(&foreign_modules::get_lints());
283    store.register_lints(&HardwiredLints::lint_vec());
284
285    store.register_group(false, "nonstandard_style", None,
    <[_]>::into_vec(::alloc::boxed::box_new([LintId::of(NON_CAMEL_CASE_TYPES),
                    LintId::of(NON_SNAKE_CASE),
                    LintId::of(NON_UPPER_CASE_GLOBALS)])));add_lint_group!(
286        "nonstandard_style",
287        NON_CAMEL_CASE_TYPES,
288        NON_SNAKE_CASE,
289        NON_UPPER_CASE_GLOBALS
290    );
291
292    store.register_group(false, "unused", None,
    <[_]>::into_vec(::alloc::boxed::box_new([LintId::of(UNUSED_IMPORTS),
                    LintId::of(UNUSED_VARIABLES),
                    LintId::of(UNUSED_VISIBILITIES),
                    LintId::of(UNUSED_ASSIGNMENTS), LintId::of(DEAD_CODE),
                    LintId::of(UNUSED_MUT), LintId::of(UNREACHABLE_CODE),
                    LintId::of(UNREACHABLE_PATTERNS),
                    LintId::of(UNUSED_MUST_USE), LintId::of(UNUSED_UNSAFE),
                    LintId::of(PATH_STATEMENTS), LintId::of(UNUSED_ATTRIBUTES),
                    LintId::of(UNUSED_MACROS), LintId::of(UNUSED_MACRO_RULES),
                    LintId::of(UNUSED_ALLOCATION),
                    LintId::of(UNUSED_DOC_COMMENTS),
                    LintId::of(UNUSED_EXTERN_CRATES),
                    LintId::of(UNUSED_FEATURES), LintId::of(UNUSED_LABELS),
                    LintId::of(UNUSED_PARENS), LintId::of(UNUSED_BRACES),
                    LintId::of(REDUNDANT_SEMICOLONS),
                    LintId::of(MAP_UNIT_FN)])));add_lint_group!(
293        "unused",
294        UNUSED_IMPORTS,
295        UNUSED_VARIABLES,
296        UNUSED_VISIBILITIES,
297        UNUSED_ASSIGNMENTS,
298        DEAD_CODE,
299        UNUSED_MUT,
300        UNREACHABLE_CODE,
301        UNREACHABLE_PATTERNS,
302        UNUSED_MUST_USE,
303        UNUSED_UNSAFE,
304        PATH_STATEMENTS,
305        UNUSED_ATTRIBUTES,
306        UNUSED_MACROS,
307        UNUSED_MACRO_RULES,
308        UNUSED_ALLOCATION,
309        UNUSED_DOC_COMMENTS,
310        UNUSED_EXTERN_CRATES,
311        UNUSED_FEATURES,
312        UNUSED_LABELS,
313        UNUSED_PARENS,
314        UNUSED_BRACES,
315        REDUNDANT_SEMICOLONS,
316        MAP_UNIT_FN
317    );
318
319    store.register_group(false, "let_underscore", None,
    <[_]>::into_vec(::alloc::boxed::box_new([LintId::of(LET_UNDERSCORE_DROP),
                    LintId::of(LET_UNDERSCORE_LOCK)])));add_lint_group!("let_underscore", LET_UNDERSCORE_DROP, LET_UNDERSCORE_LOCK);
320
321    store.register_group(false, "rust_2018_idioms", None,
    <[_]>::into_vec(::alloc::boxed::box_new([LintId::of(BARE_TRAIT_OBJECTS),
                    LintId::of(UNUSED_EXTERN_CRATES),
                    LintId::of(ELLIPSIS_INCLUSIVE_RANGE_PATTERNS),
                    LintId::of(ELIDED_LIFETIMES_IN_PATHS),
                    LintId::of(EXPLICIT_OUTLIVES_REQUIREMENTS)])));add_lint_group!(
322        "rust_2018_idioms",
323        BARE_TRAIT_OBJECTS,
324        UNUSED_EXTERN_CRATES,
325        ELLIPSIS_INCLUSIVE_RANGE_PATTERNS,
326        ELIDED_LIFETIMES_IN_PATHS,
327        EXPLICIT_OUTLIVES_REQUIREMENTS // FIXME(#52665, #47816) not always applicable and not all
328                                       // macros are ready for this yet.
329                                       // UNREACHABLE_PUB,
330
331                                       // FIXME macro crates are not up for this yet, too much
332                                       // breakage is seen if we try to encourage this lint.
333                                       // MACRO_USE_EXTERN_CRATE
334    );
335
336    store.register_group(false, "keyword_idents", None,
    <[_]>::into_vec(::alloc::boxed::box_new([LintId::of(KEYWORD_IDENTS_2018),
                    LintId::of(KEYWORD_IDENTS_2024)])));add_lint_group!("keyword_idents", KEYWORD_IDENTS_2018, KEYWORD_IDENTS_2024);
337
338    store.register_group(false, "refining_impl_trait", None,
    <[_]>::into_vec(::alloc::boxed::box_new([LintId::of(REFINING_IMPL_TRAIT_REACHABLE),
                    LintId::of(REFINING_IMPL_TRAIT_INTERNAL)])));add_lint_group!(
339        "refining_impl_trait",
340        REFINING_IMPL_TRAIT_REACHABLE,
341        REFINING_IMPL_TRAIT_INTERNAL
342    );
343
344    store.register_group(false, "deprecated_safe", None,
    <[_]>::into_vec(::alloc::boxed::box_new([LintId::of(DEPRECATED_SAFE_2024)])));add_lint_group!("deprecated_safe", DEPRECATED_SAFE_2024);
345
346    store.register_group(false, "unknown_or_malformed_diagnostic_attributes",
    None,
    <[_]>::into_vec(::alloc::boxed::box_new([LintId::of(MALFORMED_DIAGNOSTIC_ATTRIBUTES),
                    LintId::of(MALFORMED_DIAGNOSTIC_FORMAT_LITERALS),
                    LintId::of(MISPLACED_DIAGNOSTIC_ATTRIBUTES),
                    LintId::of(UNKNOWN_DIAGNOSTIC_ATTRIBUTES)])));add_lint_group!(
347        "unknown_or_malformed_diagnostic_attributes",
348        MALFORMED_DIAGNOSTIC_ATTRIBUTES,
349        MALFORMED_DIAGNOSTIC_FORMAT_LITERALS,
350        MISPLACED_DIAGNOSTIC_ATTRIBUTES,
351        UNKNOWN_DIAGNOSTIC_ATTRIBUTES
352    );
353
354    // Register renamed and removed lints.
355    store.register_renamed("single_use_lifetime", "single_use_lifetimes");
356    store.register_renamed("elided_lifetime_in_path", "elided_lifetimes_in_paths");
357    store.register_renamed("bare_trait_object", "bare_trait_objects");
358    store.register_renamed("unstable_name_collision", "unstable_name_collisions");
359    store.register_renamed("unused_doc_comment", "unused_doc_comments");
360    store.register_renamed("async_idents", "keyword_idents_2018");
361    store.register_renamed("exceeding_bitshifts", "arithmetic_overflow");
362    store.register_renamed("redundant_semicolon", "redundant_semicolons");
363    store.register_renamed("overlapping_patterns", "overlapping_range_endpoints");
364    store.register_renamed("disjoint_capture_migration", "rust_2021_incompatible_closure_captures");
365    store.register_renamed("or_patterns_back_compat", "rust_2021_incompatible_or_patterns");
366    store.register_renamed("non_fmt_panic", "non_fmt_panics");
367    store.register_renamed("unused_tuple_struct_fields", "dead_code");
368    store.register_renamed("static_mut_ref", "static_mut_refs");
369    store.register_renamed("temporary_cstring_as_ptr", "dangling_pointers_from_temporaries");
370    store.register_renamed("elided_named_lifetimes", "mismatched_lifetime_syntaxes");
371    store.register_renamed(
372        "repr_transparent_external_private_fields",
373        "repr_transparent_non_zst_fields",
374    );
375
376    // These were moved to tool lints, but rustc still sees them when compiling normally, before
377    // tool lints are registered, so `check_tool_name_for_backwards_compat` doesn't work. Use
378    // `register_removed` explicitly.
379    const RUSTDOC_LINTS: &[&str] = &[
380        "broken_intra_doc_links",
381        "private_intra_doc_links",
382        "missing_crate_level_docs",
383        "missing_doc_code_examples",
384        "private_doc_tests",
385        "invalid_codeblock_attributes",
386        "invalid_html_tags",
387        "non_autolinks",
388    ];
389    for rustdoc_lint in RUSTDOC_LINTS {
390        store.register_ignored(rustdoc_lint);
391    }
392    store.register_removed(
393        "intra_doc_link_resolution_failure",
394        "use `rustdoc::broken_intra_doc_links` instead",
395    );
396    store.register_removed("rustdoc", "use `rustdoc::all` instead");
397
398    store.register_removed("unknown_features", "replaced by an error");
399    store.register_removed("unsigned_negation", "replaced by negate_unsigned feature gate");
400    store.register_removed("negate_unsigned", "cast a signed value instead");
401    store.register_removed("raw_pointer_derive", "using derive with raw pointers is ok");
402    // Register lint group aliases.
403    store.register_group_alias("nonstandard_style", "bad_style");
404    // This was renamed to `raw_pointer_derive`, which was then removed,
405    // so it is also considered removed.
406    store.register_removed("raw_pointer_deriving", "using derive with raw pointers is ok");
407    store.register_removed("drop_with_repr_extern", "drop flags have been removed");
408    store.register_removed("fat_ptr_transmutes", "was accidentally removed back in 2014");
409    store.register_removed("deprecated_attr", "use `deprecated` instead");
410    store.register_removed(
411        "transmute_from_fn_item_types",
412        "always cast functions before transmuting them",
413    );
414    store.register_removed(
415        "hr_lifetime_in_assoc_type",
416        "converted into hard error, see issue #33685 \
417         <https://github.com/rust-lang/rust/issues/33685> for more information",
418    );
419    store.register_removed(
420        "inaccessible_extern_crate",
421        "converted into hard error, see issue #36886 \
422         <https://github.com/rust-lang/rust/issues/36886> for more information",
423    );
424    store.register_removed(
425        "super_or_self_in_global_path",
426        "converted into hard error, see issue #36888 \
427         <https://github.com/rust-lang/rust/issues/36888> for more information",
428    );
429    store.register_removed(
430        "overlapping_inherent_impls",
431        "converted into hard error, see issue #36889 \
432         <https://github.com/rust-lang/rust/issues/36889> for more information",
433    );
434    store.register_removed(
435        "illegal_floating_point_constant_pattern",
436        "converted into hard error, see issue #36890 \
437         <https://github.com/rust-lang/rust/issues/36890> for more information",
438    );
439    store.register_removed(
440        "illegal_struct_or_enum_constant_pattern",
441        "converted into hard error, see issue #36891 \
442         <https://github.com/rust-lang/rust/issues/36891> for more information",
443    );
444    store.register_removed(
445        "lifetime_underscore",
446        "converted into hard error, see issue #36892 \
447         <https://github.com/rust-lang/rust/issues/36892> for more information",
448    );
449    store.register_removed(
450        "extra_requirement_in_impl",
451        "converted into hard error, see issue #37166 \
452         <https://github.com/rust-lang/rust/issues/37166> for more information",
453    );
454    store.register_removed(
455        "legacy_imports",
456        "converted into hard error, see issue #38260 \
457         <https://github.com/rust-lang/rust/issues/38260> for more information",
458    );
459    store.register_removed(
460        "coerce_never",
461        "converted into hard error, see issue #48950 \
462         <https://github.com/rust-lang/rust/issues/48950> for more information",
463    );
464    store.register_removed(
465        "resolve_trait_on_defaulted_unit",
466        "converted into hard error, see issue #48950 \
467         <https://github.com/rust-lang/rust/issues/48950> for more information",
468    );
469    store.register_removed(
470        "private_no_mangle_fns",
471        "no longer a warning, `#[no_mangle]` functions always exported",
472    );
473    store.register_removed(
474        "private_no_mangle_statics",
475        "no longer a warning, `#[no_mangle]` statics always exported",
476    );
477    store.register_removed("bad_repr", "replaced with a generic attribute input check");
478    store.register_removed(
479        "duplicate_matcher_binding_name",
480        "converted into hard error, see issue #57742 \
481         <https://github.com/rust-lang/rust/issues/57742> for more information",
482    );
483    store.register_removed(
484        "incoherent_fundamental_impls",
485        "converted into hard error, see issue #46205 \
486         <https://github.com/rust-lang/rust/issues/46205> for more information",
487    );
488    store.register_removed(
489        "legacy_constructor_visibility",
490        "converted into hard error, see issue #39207 \
491         <https://github.com/rust-lang/rust/issues/39207> for more information",
492    );
493    store.register_removed(
494        "legacy_directory_ownership",
495        "converted into hard error, see issue #37872 \
496         <https://github.com/rust-lang/rust/issues/37872> for more information",
497    );
498    store.register_removed(
499        "safe_extern_statics",
500        "converted into hard error, see issue #36247 \
501         <https://github.com/rust-lang/rust/issues/36247> for more information",
502    );
503    store.register_removed(
504        "parenthesized_params_in_types_and_modules",
505        "converted into hard error, see issue #42238 \
506         <https://github.com/rust-lang/rust/issues/42238> for more information",
507    );
508    store.register_removed(
509        "duplicate_macro_exports",
510        "converted into hard error, see issue #35896 \
511         <https://github.com/rust-lang/rust/issues/35896> for more information",
512    );
513    store.register_removed(
514        "nested_impl_trait",
515        "converted into hard error, see issue #59014 \
516         <https://github.com/rust-lang/rust/issues/59014> for more information",
517    );
518    store.register_removed("plugin_as_library", "plugins have been deprecated and retired");
519    store.register_removed(
520        "unsupported_naked_functions",
521        "converted into hard error, see RFC 2972 \
522         <https://github.com/rust-lang/rfcs/blob/master/text/2972-constrained-naked.md> for more information",
523    );
524    store.register_removed(
525        "mutable_borrow_reservation_conflict",
526        "now allowed, see issue #59159 \
527         <https://github.com/rust-lang/rust/issues/59159> for more information",
528    );
529    store.register_removed(
530        "const_err",
531        "converted into hard error, see issue #71800 \
532         <https://github.com/rust-lang/rust/issues/71800> for more information",
533    );
534    store.register_removed(
535        "safe_packed_borrows",
536        "converted into hard error, see issue #82523 \
537         <https://github.com/rust-lang/rust/issues/82523> for more information",
538    );
539    store.register_removed(
540        "unaligned_references",
541        "converted into hard error, see issue #82523 \
542         <https://github.com/rust-lang/rust/issues/82523> for more information",
543    );
544    store.register_removed(
545        "private_in_public",
546        "replaced with another group of lints, see RFC \
547         <https://rust-lang.github.io/rfcs/2145-type-privacy.html> for more information",
548    );
549    store.register_removed(
550        "invalid_alignment",
551        "converted into hard error, see PR #104616 \
552         <https://github.com/rust-lang/rust/pull/104616> for more information",
553    );
554    store.register_removed(
555        "implied_bounds_entailment",
556        "converted into hard error, see PR #117984 \
557        <https://github.com/rust-lang/rust/pull/117984> for more information",
558    );
559    store.register_removed(
560        "coinductive_overlap_in_coherence",
561        "converted into hard error, see PR #118649 \
562         <https://github.com/rust-lang/rust/pull/118649> for more information",
563    );
564    store.register_removed(
565        "illegal_floating_point_literal_pattern",
566        "no longer a warning, float patterns behave the same as `==`",
567    );
568    store.register_removed(
569        "nontrivial_structural_match",
570        "no longer needed, see RFC #3535 \
571         <https://rust-lang.github.io/rfcs/3535-constants-in-patterns.html> for more information",
572    );
573    store.register_removed(
574        "suspicious_auto_trait_impls",
575        "no longer needed, see issue #93367 \
576         <https://github.com/rust-lang/rust/issues/93367> for more information",
577    );
578    store.register_removed(
579        "const_patterns_without_partial_eq",
580        "converted into hard error, see RFC #3535 \
581         <https://rust-lang.github.io/rfcs/3535-constants-in-patterns.html> for more information",
582    );
583    store.register_removed(
584        "indirect_structural_match",
585        "converted into hard error, see RFC #3535 \
586         <https://rust-lang.github.io/rfcs/3535-constants-in-patterns.html> for more information",
587    );
588    store.register_removed(
589        "deprecated_cfg_attr_crate_type_name",
590        "converted into hard error, see issue #91632 \
591         <https://github.com/rust-lang/rust/issues/91632> for more information",
592    );
593    store.register_removed(
594        "pointer_structural_match",
595        "converted into hard error, see RFC #3535 \
596         <https://rust-lang.github.io/rfcs/3535-constants-in-patterns.html> for more information",
597    );
598    store.register_removed(
599        "box_pointers",
600        "it does not detect other kinds of allocations, and existed only for historical reasons",
601    );
602    store.register_removed(
603        "byte_slice_in_packed_struct_with_derive",
604        "converted into hard error, see issue #107457 \
605         <https://github.com/rust-lang/rust/issues/107457> for more information",
606    );
607    store.register_removed("writes_through_immutable_pointer", "converted into hard error");
608    store.register_removed(
609        "const_eval_mutable_ptr_in_final_value",
610        "partially allowed now, otherwise turned into a hard error",
611    );
612    store.register_removed(
613        "where_clauses_object_safety",
614        "converted into hard error, see PR #125380 \
615         <https://github.com/rust-lang/rust/pull/125380> for more information",
616    );
617    store.register_removed(
618        "cenum_impl_drop_cast",
619        "converted into hard error, \
620         see <https://github.com/rust-lang/rust/issues/73333> for more information",
621    );
622    store.register_removed(
623        "ptr_cast_add_auto_to_object",
624        "converted into hard error, see issue #127323 \
625         <https://github.com/rust-lang/rust/issues/127323> for more information",
626    );
627    store.register_removed("unsupported_fn_ptr_calling_conventions", "converted into hard error");
628    store.register_removed(
629        "undefined_naked_function_abi",
630        "converted into hard error, see PR #139001 \
631         <https://github.com/rust-lang/rust/issues/139001> for more information",
632    );
633    store.register_removed(
634        "abi_unsupported_vector_types",
635        "converted into hard error, \
636         see <https://github.com/rust-lang/rust/issues/116558> for more information",
637    );
638    store.register_removed(
639        "missing_fragment_specifier",
640        "converted into hard error, \
641         see <https://github.com/rust-lang/rust/issues/40107> for more information",
642    );
643    store.register_removed("wasm_c_abi", "the wasm C ABI has been fixed");
644}
645
646fn register_internals(store: &mut LintStore) {
647    store.register_lints(&LintPassImpl::lint_vec());
648    store.register_early_pass(|| Box::new(LintPassImpl));
649    store.register_lints(&DefaultHashTypes::lint_vec());
650    store.register_late_mod_pass(|_| Box::new(DefaultHashTypes));
651    store.register_lints(&QueryStability::lint_vec());
652    store.register_late_mod_pass(|_| Box::new(QueryStability));
653    store.register_lints(&TyTyKind::lint_vec());
654    store.register_late_mod_pass(|_| Box::new(TyTyKind));
655    store.register_lints(&TypeIr::lint_vec());
656    store.register_late_mod_pass(|_| Box::new(TypeIr));
657    store.register_lints(&BadOptAccess::lint_vec());
658    store.register_late_mod_pass(|_| Box::new(BadOptAccess));
659    store.register_lints(&PassByValue::lint_vec());
660    store.register_late_mod_pass(|_| Box::new(PassByValue));
661    store.register_lints(&SpanUseEqCtxt::lint_vec());
662    store.register_late_mod_pass(|_| Box::new(SpanUseEqCtxt));
663    store.register_lints(&SymbolInternStringLiteral::lint_vec());
664    store.register_late_mod_pass(|_| Box::new(SymbolInternStringLiteral));
665    store.register_lints(&ImplicitSysrootCrateImport::lint_vec());
666    store.register_early_pass(|| Box::new(ImplicitSysrootCrateImport));
667    store.register_group(
668        false,
669        "rustc::internal",
670        None,
671        <[_]>::into_vec(::alloc::boxed::box_new([LintId::of(DEFAULT_HASH_TYPES),
                LintId::of(POTENTIAL_QUERY_INSTABILITY),
                LintId::of(UNTRACKED_QUERY_INFORMATION),
                LintId::of(USAGE_OF_TY_TYKIND), LintId::of(PASS_BY_VALUE),
                LintId::of(LINT_PASS_IMPL_WITHOUT_MACRO),
                LintId::of(USAGE_OF_QUALIFIED_TY),
                LintId::of(NON_GLOB_IMPORT_OF_TYPE_IR_INHERENT),
                LintId::of(USAGE_OF_TYPE_IR_INHERENT),
                LintId::of(USAGE_OF_TYPE_IR_TRAITS),
                LintId::of(BAD_OPT_ACCESS), LintId::of(SPAN_USE_EQ_CTXT),
                LintId::of(DIRECT_USE_OF_RUSTC_TYPE_IR),
                LintId::of(IMPLICIT_SYSROOT_CRATE_IMPORT)]))vec![
672            LintId::of(DEFAULT_HASH_TYPES),
673            LintId::of(POTENTIAL_QUERY_INSTABILITY),
674            LintId::of(UNTRACKED_QUERY_INFORMATION),
675            LintId::of(USAGE_OF_TY_TYKIND),
676            LintId::of(PASS_BY_VALUE),
677            LintId::of(LINT_PASS_IMPL_WITHOUT_MACRO),
678            LintId::of(USAGE_OF_QUALIFIED_TY),
679            LintId::of(NON_GLOB_IMPORT_OF_TYPE_IR_INHERENT),
680            LintId::of(USAGE_OF_TYPE_IR_INHERENT),
681            LintId::of(USAGE_OF_TYPE_IR_TRAITS),
682            LintId::of(BAD_OPT_ACCESS),
683            LintId::of(SPAN_USE_EQ_CTXT),
684            LintId::of(DIRECT_USE_OF_RUSTC_TYPE_IR),
685            LintId::of(IMPLICIT_SYSROOT_CRATE_IMPORT),
686        ],
687    );
688}
689
690#[cfg(test)]
691mod tests;