1//! Generated by `cargo xtask codegen lint-definitions`, do not edit by hand.23use span::Edition;45use crate::Severity;67#[derive(Clone)]8pub struct Lint {9 pub label: &'static str,10 pub description: &'static str,11 pub default_severity: Severity,12 pub warn_since: Option<Edition>,13 pub deny_since: Option<Edition>,14}1516pub struct LintGroup {17 pub lint: Lint,18 pub children: &'static [&'static str],19}2021pub const DEFAULT_LINTS: &[Lint] = &[22 Lint {23 label: "aarch64_softfloat_neon",24 description: r##"detects code that could be affected by ABI issues on aarch64 softfloat targets"##,25 default_severity: Severity::Warning,26 warn_since: None,27 deny_since: None,28 },29 Lint {30 label: "absolute_paths_not_starting_with_crate",31 description: r##"fully qualified paths that start with a module name instead of `crate`, `self`, or an extern crate name"##,32 default_severity: Severity::Allow,33 warn_since: None,34 deny_since: None,35 },36 Lint {37 label: "ambiguous_associated_items",38 description: r##"ambiguous associated items"##,39 default_severity: Severity::Error,40 warn_since: None,41 deny_since: None,42 },43 Lint {44 label: "ambiguous_derive_helpers",45 description: r##"detects derive helper attributes that are ambiguous with built-in attributes"##,46 default_severity: Severity::Warning,47 warn_since: None,48 deny_since: None,49 },50 Lint {51 label: "ambiguous_glob_imported_traits",52 description: r##"detects uses of ambiguously glob imported traits"##,53 default_severity: Severity::Warning,54 warn_since: None,55 deny_since: None,56 },57 Lint {58 label: "ambiguous_glob_imports",59 description: r##"detects certain glob imports that require reporting an ambiguity error"##,60 default_severity: Severity::Error,61 warn_since: None,62 deny_since: None,63 },64 Lint {65 label: "ambiguous_glob_reexports",66 description: r##"ambiguous glob re-exports"##,67 default_severity: Severity::Warning,68 warn_since: None,69 deny_since: None,70 },71 Lint {72 label: "ambiguous_import_visibilities",73 description: r##"detects certain glob imports that require reporting an ambiguity error"##,74 default_severity: Severity::Warning,75 warn_since: None,76 deny_since: None,77 },78 Lint {79 label: "ambiguous_negative_literals",80 description: r##"ambiguous negative literals operations"##,81 default_severity: Severity::Allow,82 warn_since: None,83 deny_since: None,84 },85 Lint {86 label: "ambiguous_panic_imports",87 description: r##"detects ambiguous core and std panic imports"##,88 default_severity: Severity::Warning,89 warn_since: None,90 deny_since: None,91 },92 Lint {93 label: "ambiguous_wide_pointer_comparisons",94 description: r##"detects ambiguous wide pointer comparisons"##,95 default_severity: Severity::Warning,96 warn_since: None,97 deny_since: None,98 },99 Lint {100 label: "anonymous_parameters",101 description: r##"detects anonymous parameters"##,102 default_severity: Severity::Warning,103 warn_since: None,104 deny_since: None,105 },106 Lint {107 label: "arithmetic_overflow",108 description: r##"arithmetic operation overflows"##,109 default_severity: Severity::Error,110 warn_since: None,111 deny_since: None,112 },113 Lint {114 label: "array_into_iter",115 description: r##"detects calling `into_iter` on arrays in Rust 2015 and 2018"##,116 default_severity: Severity::Warning,117 warn_since: None,118 deny_since: None,119 },120 Lint {121 label: "asm_sub_register",122 description: r##"using only a subset of a register for inline asm inputs"##,123 default_severity: Severity::Warning,124 warn_since: None,125 deny_since: None,126 },127 Lint {128 label: "async_fn_in_trait",129 description: r##"use of `async fn` in definition of a publicly-reachable trait"##,130 default_severity: Severity::Warning,131 warn_since: None,132 deny_since: None,133 },134 Lint {135 label: "bad_asm_style",136 description: r##"incorrect use of inline assembly"##,137 default_severity: Severity::Warning,138 warn_since: None,139 deny_since: None,140 },141 Lint {142 label: "bare_trait_objects",143 description: r##"suggest using `dyn Trait` for trait objects"##,144 default_severity: Severity::Warning,145 warn_since: None,146 deny_since: None,147 },148 Lint {149 label: "binary_asm_labels",150 description: r##"labels in inline assembly containing only 0 or 1 digits"##,151 default_severity: Severity::Error,152 warn_since: None,153 deny_since: None,154 },155 Lint {156 label: "bindings_with_variant_name",157 description: r##"detects pattern bindings with the same name as one of the matched variants"##,158 default_severity: Severity::Error,159 warn_since: None,160 deny_since: None,161 },162 Lint {163 label: "boxed_slice_into_iter",164 description: r##"detects calling `into_iter` on boxed slices in Rust 2015, 2018, and 2021"##,165 default_severity: Severity::Warning,166 warn_since: None,167 deny_since: None,168 },169 Lint {170 label: "break_with_label_and_loop",171 description: r##"`break` expression with label and unlabeled loop as value expression"##,172 default_severity: Severity::Warning,173 warn_since: None,174 deny_since: None,175 },176 Lint {177 label: "clashing_extern_declarations",178 description: r##"detects when an extern fn has been declared with the same name but different types"##,179 default_severity: Severity::Warning,180 warn_since: None,181 deny_since: None,182 },183 Lint {184 label: "closure_returning_async_block",185 description: r##"closure that returns `async {}` could be rewritten as an async closure"##,186 default_severity: Severity::Allow,187 warn_since: None,188 deny_since: None,189 },190 Lint {191 label: "coherence_leak_check",192 description: r##"distinct impls distinguished only by the leak-check code"##,193 default_severity: Severity::Warning,194 warn_since: None,195 deny_since: None,196 },197 Lint {198 label: "conflicting_repr_hints",199 description: r##"conflicts between `#[repr(..)]` hints that were previously accepted and used in practice"##,200 default_severity: Severity::Error,201 warn_since: None,202 deny_since: None,203 },204 Lint {205 label: "confusable_idents",206 description: r##"detects visually confusable pairs between identifiers"##,207 default_severity: Severity::Warning,208 warn_since: None,209 deny_since: None,210 },211 Lint {212 label: "const_evaluatable_unchecked",213 description: r##"detects a generic constant is used in a type without a emitting a warning"##,214 default_severity: Severity::Warning,215 warn_since: None,216 deny_since: None,217 },218 Lint {219 label: "const_item_interior_mutations",220 description: r##"checks for calls which mutates a interior mutable const-item"##,221 default_severity: Severity::Warning,222 warn_since: None,223 deny_since: None,224 },225 Lint {226 label: "const_item_mutation",227 description: r##"detects attempts to mutate a `const` item"##,228 default_severity: Severity::Warning,229 warn_since: None,230 deny_since: None,231 },232 Lint {233 label: "dangerous_implicit_autorefs",234 description: r##"implicit reference to a dereference of a raw pointer"##,235 default_severity: Severity::Error,236 warn_since: None,237 deny_since: None,238 },239 Lint {240 label: "dangling_pointers_from_locals",241 description: r##"detects returning a pointer from a local variable"##,242 default_severity: Severity::Warning,243 warn_since: None,244 deny_since: None,245 },246 Lint {247 label: "dangling_pointers_from_temporaries",248 description: r##"detects getting a pointer from a temporary"##,249 default_severity: Severity::Warning,250 warn_since: None,251 deny_since: None,252 },253 Lint {254 label: "dead_code",255 description: r##"detect unused, unexported items"##,256 default_severity: Severity::Warning,257 warn_since: None,258 deny_since: None,259 },260 Lint {261 label: "dead_code_pub_in_binary",262 description: r##"detect public items in executable crates that are never used"##,263 default_severity: Severity::Allow,264 warn_since: None,265 deny_since: None,266 },267 Lint {268 label: "default_overrides_default_fields",269 description: r##"detect `Default` impl that should use the type's default field values"##,270 default_severity: Severity::Error,271 warn_since: None,272 deny_since: None,273 },274 Lint {275 label: "dependency_on_unit_never_type_fallback",276 description: r##"never type fallback affecting unsafe function calls"##,277 default_severity: Severity::Error,278 warn_since: None,279 deny_since: None,280 },281 Lint {282 label: "deprecated",283 description: r##"detects use of deprecated items"##,284 default_severity: Severity::Warning,285 warn_since: None,286 deny_since: None,287 },288 Lint {289 label: "deprecated_in_future",290 description: r##"detects use of items that will be deprecated in a future version"##,291 default_severity: Severity::Allow,292 warn_since: None,293 deny_since: None,294 },295 Lint {296 label: "deprecated_llvm_intrinsic",297 description: r##"detects uses of deprecated LLVM intrinsics"##,298 default_severity: Severity::Allow,299 warn_since: None,300 deny_since: None,301 },302 Lint {303 label: "deprecated_safe_2024",304 description: r##"detects unsafe functions being used as safe functions"##,305 default_severity: Severity::Allow,306 warn_since: None,307 deny_since: None,308 },309 Lint {310 label: "deprecated_where_clause_location",311 description: r##"deprecated where clause location"##,312 default_severity: Severity::Warning,313 warn_since: None,314 deny_since: None,315 },316 Lint {317 label: "deref_into_dyn_supertrait",318 description: r##"`Deref` implementation with a supertrait trait object for output is shadowed by trait upcasting"##,319 default_severity: Severity::Allow,320 warn_since: None,321 deny_since: None,322 },323 Lint {324 label: "deref_nullptr",325 description: r##"detects when an null pointer is dereferenced"##,326 default_severity: Severity::Error,327 warn_since: None,328 deny_since: None,329 },330 Lint {331 label: "double_negations",332 description: r##"detects expressions of the form `--x`"##,333 default_severity: Severity::Warning,334 warn_since: None,335 deny_since: None,336 },337 Lint {338 label: "drop_bounds",339 description: r##"bounds of the form `T: Drop` are most likely incorrect"##,340 default_severity: Severity::Warning,341 warn_since: None,342 deny_since: None,343 },344 Lint {345 label: "dropping_copy_types",346 description: r##"calls to `std::mem::drop` with a value that implements Copy"##,347 default_severity: Severity::Warning,348 warn_since: None,349 deny_since: None,350 },351 Lint {352 label: "dropping_references",353 description: r##"calls to `std::mem::drop` with a reference instead of an owned value"##,354 default_severity: Severity::Warning,355 warn_since: None,356 deny_since: None,357 },358 Lint {359 label: "duplicate_features",360 description: r##"duplicate features found in crate-level `#[feature]` directives"##,361 default_severity: Severity::Error,362 warn_since: None,363 deny_since: None,364 },365 Lint {366 label: "duplicate_macro_attributes",367 description: r##"duplicated attribute"##,368 default_severity: Severity::Warning,369 warn_since: None,370 deny_since: None,371 },372 Lint {373 label: "dyn_drop",374 description: r##"trait objects of the form `dyn Drop` are useless"##,375 default_severity: Severity::Warning,376 warn_since: None,377 deny_since: None,378 },379 Lint {380 label: "edition_2024_expr_fragment_specifier",381 description: r##"The `expr` fragment specifier will accept more expressions in the 2024 edition. To keep the existing behavior, use the `expr_2021` fragment specifier."##,382 default_severity: Severity::Allow,383 warn_since: None,384 deny_since: None,385 },386 Lint {387 label: "elided_lifetimes_in_associated_constant",388 description: r##"elided lifetimes cannot be used in associated constants in impls"##,389 default_severity: Severity::Error,390 warn_since: None,391 deny_since: None,392 },393 Lint {394 label: "elided_lifetimes_in_paths",395 description: r##"hidden lifetime parameters in types are deprecated"##,396 default_severity: Severity::Allow,397 warn_since: None,398 deny_since: None,399 },400 Lint {401 label: "ellipsis_inclusive_range_patterns",402 description: r##"`...` range patterns are deprecated"##,403 default_severity: Severity::Warning,404 warn_since: None,405 deny_since: None,406 },407 Lint {408 label: "enum_intrinsics_non_enums",409 description: r##"detects calls to `core::mem::discriminant` and `core::mem::variant_count` with non-enum types"##,410 default_severity: Severity::Error,411 warn_since: None,412 deny_since: None,413 },414 Lint {415 label: "explicit_builtin_cfgs_in_flags",416 description: r##"detects builtin cfgs set via the `--cfg`"##,417 default_severity: Severity::Error,418 warn_since: None,419 deny_since: None,420 },421 Lint {422 label: "explicit_outlives_requirements",423 description: r##"outlives requirements can be inferred"##,424 default_severity: Severity::Allow,425 warn_since: None,426 deny_since: None,427 },428 Lint {429 label: "exported_private_dependencies",430 description: r##"public interface leaks type from a private dependency"##,431 default_severity: Severity::Warning,432 warn_since: None,433 deny_since: None,434 },435 Lint {436 label: "ffi_unwind_calls",437 description: r##"call to foreign functions or function pointers with FFI-unwind ABI"##,438 default_severity: Severity::Allow,439 warn_since: None,440 deny_since: None,441 },442 Lint {443 label: "float_literal_f32_fallback",444 description: r##"detects unsuffixed floating point literals whose type fallback to `f32`"##,445 default_severity: Severity::Warning,446 warn_since: None,447 deny_since: None,448 },449 Lint {450 label: "for_loops_over_fallibles",451 description: r##"for-looping over an `Option` or a `Result`, which is more clearly expressed as an `if let`"##,452 default_severity: Severity::Warning,453 warn_since: None,454 deny_since: None,455 },456 Lint {457 label: "forbidden_lint_groups",458 description: r##"applying forbid to lint-groups"##,459 default_severity: Severity::Warning,460 warn_since: None,461 deny_since: None,462 },463 Lint {464 label: "forgetting_copy_types",465 description: r##"calls to `std::mem::forget` with a value that implements Copy"##,466 default_severity: Severity::Warning,467 warn_since: None,468 deny_since: None,469 },470 Lint {471 label: "forgetting_references",472 description: r##"calls to `std::mem::forget` with a reference instead of an owned value"##,473 default_severity: Severity::Warning,474 warn_since: None,475 deny_since: None,476 },477 Lint {478 label: "function_casts_as_integer",479 description: r##"casting a function into an integer"##,480 default_severity: Severity::Warning,481 warn_since: None,482 deny_since: None,483 },484 Lint {485 label: "function_item_references",486 description: r##"suggest casting to a function pointer when attempting to take references to function items"##,487 default_severity: Severity::Warning,488 warn_since: None,489 deny_since: None,490 },491 Lint {492 label: "fuzzy_provenance_casts",493 description: r##"a fuzzy integer to pointer cast is used"##,494 default_severity: Severity::Allow,495 warn_since: None,496 deny_since: None,497 },498 Lint {499 label: "hidden_glob_reexports",500 description: r##"name introduced by a private item shadows a name introduced by a public glob re-export"##,501 default_severity: Severity::Warning,502 warn_since: None,503 deny_since: None,504 },505 Lint {506 label: "if_let_rescope",507 description: r##"`if let` assigns a shorter lifetime to temporary values being pattern-matched against in Edition 2024 and rewriting in `match` is an option to preserve the semantics up to Edition 2021"##,508 default_severity: Severity::Allow,509 warn_since: None,510 deny_since: None,511 },512 Lint {513 label: "ill_formed_attribute_input",514 description: r##"ill-formed attribute inputs that were previously accepted and used in practice"##,515 default_severity: Severity::Error,516 warn_since: None,517 deny_since: None,518 },519 Lint {520 label: "impl_trait_overcaptures",521 description: r##"`impl Trait` will capture more lifetimes than possibly intended in edition 2024"##,522 default_severity: Severity::Allow,523 warn_since: None,524 deny_since: None,525 },526 Lint {527 label: "impl_trait_redundant_captures",528 description: r##"redundant precise-capturing `use<...>` syntax on an `impl Trait`"##,529 default_severity: Severity::Allow,530 warn_since: None,531 deny_since: None,532 },533 Lint {534 label: "improper_ctypes",535 description: r##"proper use of libc types in foreign modules"##,536 default_severity: Severity::Warning,537 warn_since: None,538 deny_since: None,539 },540 Lint {541 label: "improper_ctypes_definitions",542 description: r##"proper use of libc types in foreign item definitions"##,543 default_severity: Severity::Warning,544 warn_since: None,545 deny_since: None,546 },547 Lint {548 label: "improper_gpu_kernel_arg",549 description: r##"GPU kernel entry points have a limited ABI"##,550 default_severity: Severity::Warning,551 warn_since: None,552 deny_since: None,553 },554 Lint {555 label: "incomplete_features",556 description: r##"incomplete features that may function improperly in some or all cases"##,557 default_severity: Severity::Warning,558 warn_since: None,559 deny_since: None,560 },561 Lint {562 label: "incomplete_include",563 description: r##"trailing content in included file"##,564 default_severity: Severity::Error,565 warn_since: None,566 deny_since: None,567 },568 Lint {569 label: "ineffective_unstable_trait_impl",570 description: r##"detects `#[unstable]` on stable trait implementations for stable types"##,571 default_severity: Severity::Error,572 warn_since: None,573 deny_since: None,574 },575 Lint {576 label: "inline_no_sanitize",577 description: r##"detects incompatible use of `#[inline(always)]` and `#[sanitize(... = "off")]`"##,578 default_severity: Severity::Warning,579 warn_since: None,580 deny_since: None,581 },582 Lint {583 label: "integer_to_ptr_transmutes",584 description: r##"detects integer to pointer transmutes"##,585 default_severity: Severity::Warning,586 warn_since: None,587 deny_since: None,588 },589 Lint {590 label: "internal_eq_trait_method_impls",591 description: r##"manual implementation of the internal `Eq::assert_receiver_is_total_eq` method"##,592 default_severity: Severity::Warning,593 warn_since: None,594 deny_since: None,595 },596 Lint {597 label: "internal_features",598 description: r##"internal features are not supposed to be used"##,599 default_severity: Severity::Warning,600 warn_since: None,601 deny_since: None,602 },603 Lint {604 label: "invalid_atomic_ordering",605 description: r##"usage of invalid atomic ordering in atomic operations and memory fences"##,606 default_severity: Severity::Error,607 warn_since: None,608 deny_since: None,609 },610 Lint {611 label: "invalid_doc_attributes",612 description: r##"detects invalid `#[doc(...)]` attributes"##,613 default_severity: Severity::Warning,614 warn_since: None,615 deny_since: None,616 },617 Lint {618 label: "invalid_from_utf8",619 description: r##"using a non UTF-8 literal in `std::str::from_utf8`"##,620 default_severity: Severity::Warning,621 warn_since: None,622 deny_since: None,623 },624 Lint {625 label: "invalid_from_utf8_unchecked",626 description: r##"using a non UTF-8 literal in `std::str::from_utf8_unchecked`"##,627 default_severity: Severity::Error,628 warn_since: None,629 deny_since: None,630 },631 Lint {632 label: "invalid_macro_export_arguments",633 description: r##""invalid_parameter" isn't a valid argument for `#[macro_export]`"##,634 default_severity: Severity::Error,635 warn_since: None,636 deny_since: None,637 },638 Lint {639 label: "invalid_nan_comparisons",640 description: r##"detects invalid floating point NaN comparisons"##,641 default_severity: Severity::Warning,642 warn_since: None,643 deny_since: None,644 },645 Lint {646 label: "invalid_null_arguments",647 description: r##"invalid null pointer in arguments"##,648 default_severity: Severity::Error,649 warn_since: None,650 deny_since: None,651 },652 Lint {653 label: "invalid_reference_casting",654 description: r##"casts of `&T` to `&mut T` without interior mutability"##,655 default_severity: Severity::Error,656 warn_since: None,657 deny_since: None,658 },659 Lint {660 label: "invalid_type_param_default",661 description: r##"type parameter default erroneously allowed in invalid location"##,662 default_severity: Severity::Error,663 warn_since: None,664 deny_since: None,665 },666 Lint {667 label: "invalid_value",668 description: r##"an invalid value is being created (such as a null reference)"##,669 default_severity: Severity::Warning,670 warn_since: None,671 deny_since: None,672 },673 Lint {674 label: "irrefutable_let_patterns",675 description: r##"detects irrefutable patterns in `if let` and `while let` statements"##,676 default_severity: Severity::Warning,677 warn_since: None,678 deny_since: None,679 },680 Lint {681 label: "keyword_idents_2018",682 description: r##"detects edition keywords being used as an identifier"##,683 default_severity: Severity::Allow,684 warn_since: None,685 deny_since: None,686 },687 Lint {688 label: "keyword_idents_2024",689 description: r##"detects edition keywords being used as an identifier"##,690 default_severity: Severity::Allow,691 warn_since: None,692 deny_since: None,693 },694 Lint {695 label: "large_assignments",696 description: r##"detects large moves or copies"##,697 default_severity: Severity::Warning,698 warn_since: None,699 deny_since: None,700 },701 Lint {702 label: "late_bound_lifetime_arguments",703 description: r##"detects generic lifetime arguments in path segments with late bound lifetime parameters"##,704 default_severity: Severity::Warning,705 warn_since: None,706 deny_since: None,707 },708 Lint {709 label: "legacy_derive_helpers",710 description: r##"detects derive helper attributes that are used before they are introduced"##,711 default_severity: Severity::Error,712 warn_since: None,713 deny_since: None,714 },715 Lint {716 label: "let_underscore_drop",717 description: r##"non-binding let on a type that has a destructor"##,718 default_severity: Severity::Allow,719 warn_since: None,720 deny_since: None,721 },722 Lint {723 label: "let_underscore_lock",724 description: r##"non-binding let on a synchronization lock"##,725 default_severity: Severity::Error,726 warn_since: None,727 deny_since: None,728 },729 Lint {730 label: "linker_info",731 description: r##"linker warnings known to be informational-only and not indicative of a problem"##,732 default_severity: Severity::Allow,733 warn_since: None,734 deny_since: None,735 },736 Lint {737 label: "linker_messages",738 description: r##"warnings emitted at runtime by the target-specific linker program"##,739 default_severity: Severity::Warning,740 warn_since: None,741 deny_since: None,742 },743 Lint {744 label: "long_running_const_eval",745 description: r##"detects long const eval operations"##,746 default_severity: Severity::Error,747 warn_since: None,748 deny_since: None,749 },750 Lint {751 label: "lossy_provenance_casts",752 description: r##"a lossy pointer to integer cast is used"##,753 default_severity: Severity::Allow,754 warn_since: None,755 deny_since: None,756 },757 Lint {758 label: "macro_expanded_macro_exports_accessed_by_absolute_paths",759 description: r##"macro-expanded `macro_export` macros from the current crate cannot be referred to by absolute paths"##,760 default_severity: Severity::Error,761 warn_since: None,762 deny_since: None,763 },764 Lint {765 label: "macro_use_extern_crate",766 description: r##"the `#[macro_use]` attribute is now deprecated in favor of using macros via the module system"##,767 default_severity: Severity::Allow,768 warn_since: None,769 deny_since: None,770 },771 Lint {772 label: "malformed_diagnostic_attributes",773 description: r##"detects malformed diagnostic attributes"##,774 default_severity: Severity::Warning,775 warn_since: None,776 deny_since: None,777 },778 Lint {779 label: "malformed_diagnostic_format_literals",780 description: r##"detects diagnostic attribute with malformed diagnostic format literals"##,781 default_severity: Severity::Warning,782 warn_since: None,783 deny_since: None,784 },785 Lint {786 label: "map_unit_fn",787 description: r##"`Iterator::map` call that discard the iterator's values"##,788 default_severity: Severity::Warning,789 warn_since: None,790 deny_since: None,791 },792 Lint {793 label: "meta_variable_misuse",794 description: r##"possible meta-variable misuse at macro definition"##,795 default_severity: Severity::Allow,796 warn_since: None,797 deny_since: None,798 },799 Lint {800 label: "mismatched_lifetime_syntaxes",801 description: r##"detects when a lifetime uses different syntax between arguments and return values"##,802 default_severity: Severity::Warning,803 warn_since: None,804 deny_since: None,805 },806 Lint {807 label: "misplaced_diagnostic_attributes",808 description: r##"detects diagnostic attributes that are placed on the wrong item"##,809 default_severity: Severity::Warning,810 warn_since: None,811 deny_since: None,812 },813 Lint {814 label: "missing_abi",815 description: r##"No declared ABI for extern declaration"##,816 default_severity: Severity::Warning,817 warn_since: None,818 deny_since: None,819 },820 Lint {821 label: "missing_copy_implementations",822 description: r##"detects potentially-forgotten implementations of `Copy`"##,823 default_severity: Severity::Allow,824 warn_since: None,825 deny_since: None,826 },827 Lint {828 label: "missing_debug_implementations",829 description: r##"detects missing implementations of Debug"##,830 default_severity: Severity::Allow,831 warn_since: None,832 deny_since: None,833 },834 Lint {835 label: "missing_docs",836 description: r##"detects missing documentation for public members"##,837 default_severity: Severity::Allow,838 warn_since: None,839 deny_since: None,840 },841 Lint {842 label: "missing_gpu_kernel_export_name",843 description: r##"mangled gpu-kernel function"##,844 default_severity: Severity::Warning,845 warn_since: None,846 deny_since: None,847 },848 Lint {849 label: "missing_unsafe_on_extern",850 description: r##"detects missing unsafe keyword on extern declarations"##,851 default_severity: Severity::Allow,852 warn_since: None,853 deny_since: None,854 },855 Lint {856 label: "mixed_script_confusables",857 description: r##"detects Unicode scripts whose mixed script confusables codepoints are solely used"##,858 default_severity: Severity::Warning,859 warn_since: None,860 deny_since: None,861 },862 Lint {863 label: "multiple_supertrait_upcastable",864 description: r##"detect when a dyn-compatible trait has multiple supertraits"##,865 default_severity: Severity::Allow,866 warn_since: None,867 deny_since: None,868 },869 Lint {870 label: "must_not_suspend",871 description: r##"use of a `#[must_not_suspend]` value across a yield point"##,872 default_severity: Severity::Allow,873 warn_since: None,874 deny_since: None,875 },876 Lint {877 label: "mutable_transmutes",878 description: r##"transmuting &T to &mut T is undefined behavior, even if the reference is unused"##,879 default_severity: Severity::Error,880 warn_since: None,881 deny_since: None,882 },883 Lint {884 label: "named_arguments_used_positionally",885 description: r##"named arguments in format used positionally"##,886 default_severity: Severity::Warning,887 warn_since: None,888 deny_since: None,889 },890 Lint {891 label: "named_asm_labels",892 description: r##"named labels in inline assembly"##,893 default_severity: Severity::Error,894 warn_since: None,895 deny_since: None,896 },897 Lint {898 label: "never_type_fallback_flowing_into_unsafe",899 description: r##"never type fallback affecting unsafe function calls"##,900 default_severity: Severity::Error,901 warn_since: None,902 deny_since: None,903 },904 Lint {905 label: "no_mangle_const_items",906 description: r##"const items will not have their symbols exported"##,907 default_severity: Severity::Error,908 warn_since: None,909 deny_since: None,910 },911 Lint {912 label: "no_mangle_generic_items",913 description: r##"generic items must be mangled"##,914 default_severity: Severity::Warning,915 warn_since: None,916 deny_since: None,917 },918 Lint {919 label: "non_ascii_idents",920 description: r##"detects non-ASCII identifiers"##,921 default_severity: Severity::Allow,922 warn_since: None,923 deny_since: None,924 },925 Lint {926 label: "non_camel_case_types",927 description: r##"types, variants, traits and type parameters should have camel case names"##,928 default_severity: Severity::Warning,929 warn_since: None,930 deny_since: None,931 },932 Lint {933 label: "non_contiguous_range_endpoints",934 description: r##"detects off-by-one errors with exclusive range patterns"##,935 default_severity: Severity::Warning,936 warn_since: None,937 deny_since: None,938 },939 Lint {940 label: "non_exhaustive_omitted_patterns",941 description: r##"detect when patterns of types marked `non_exhaustive` are missed"##,942 default_severity: Severity::Allow,943 warn_since: None,944 deny_since: None,945 },946 Lint {947 label: "non_fmt_panics",948 description: r##"detect single-argument panic!() invocations in which the argument is not a format string"##,949 default_severity: Severity::Warning,950 warn_since: None,951 deny_since: None,952 },953 Lint {954 label: "non_local_definitions",955 description: r##"checks for non-local definitions"##,956 default_severity: Severity::Warning,957 warn_since: None,958 deny_since: None,959 },960 Lint {961 label: "non_shorthand_field_patterns",962 description: r##"using `Struct { x: x }` instead of `Struct { x }` in a pattern"##,963 default_severity: Severity::Warning,964 warn_since: None,965 deny_since: None,966 },967 Lint {968 label: "non_snake_case",969 description: r##"variables, methods, functions, lifetime parameters and modules should have snake case names"##,970 default_severity: Severity::Warning,971 warn_since: None,972 deny_since: None,973 },974 Lint {975 label: "non_upper_case_globals",976 description: r##"static constants should have uppercase identifiers"##,977 default_severity: Severity::Warning,978 warn_since: None,979 deny_since: None,980 },981 Lint {982 label: "noop_method_call",983 description: r##"detects the use of well-known noop methods"##,984 default_severity: Severity::Warning,985 warn_since: None,986 deny_since: None,987 },988 Lint {989 label: "opaque_hidden_inferred_bound",990 description: r##"detects the use of nested `impl Trait` types in associated type bounds that are not general enough"##,991 default_severity: Severity::Warning,992 warn_since: None,993 deny_since: None,994 },995 Lint {996 label: "out_of_scope_macro_calls",997 description: r##"detects out of scope calls to `macro_rules` in key-value attributes"##,998 default_severity: Severity::Error,999 warn_since: None,1000 deny_since: None,1001 },1002 Lint {1003 label: "overflowing_literals",1004 description: r##"literal out of range for its type"##,1005 default_severity: Severity::Error,1006 warn_since: None,1007 deny_since: None,1008 },1009 Lint {1010 label: "overlapping_range_endpoints",1011 description: r##"detects range patterns with overlapping endpoints"##,1012 default_severity: Severity::Warning,1013 warn_since: None,1014 deny_since: None,1015 },1016 Lint {1017 label: "path_statements",1018 description: r##"path statements with no effect"##,1019 default_severity: Severity::Warning,1020 warn_since: None,1021 deny_since: None,1022 },1023 Lint {1024 label: "patterns_in_fns_without_body",1025 description: r##"patterns in functions without body were erroneously allowed"##,1026 default_severity: Severity::Error,1027 warn_since: None,1028 deny_since: None,1029 },1030 Lint {1031 label: "private_bounds",1032 description: r##"private type in secondary interface of an item"##,1033 default_severity: Severity::Warning,1034 warn_since: None,1035 deny_since: None,1036 },1037 Lint {1038 label: "private_interfaces",1039 description: r##"private type in primary interface of an item"##,1040 default_severity: Severity::Warning,1041 warn_since: None,1042 deny_since: None,1043 },1044 Lint {1045 label: "proc_macro_derive_resolution_fallback",1046 description: r##"detects proc macro derives using inaccessible names from parent modules"##,1047 default_severity: Severity::Error,1048 warn_since: None,1049 deny_since: None,1050 },1051 Lint {1052 label: "ptr_to_integer_transmute_in_consts",1053 description: r##"detects pointer to integer transmutes in const functions and associated constants"##,1054 default_severity: Severity::Warning,1055 warn_since: None,1056 deny_since: None,1057 },1058 Lint {1059 label: "pub_use_of_private_extern_crate",1060 description: r##"detect public re-exports of private extern crates"##,1061 default_severity: Severity::Error,1062 warn_since: None,1063 deny_since: None,1064 },1065 Lint {1066 label: "redundant_imports",1067 description: r##"imports that are redundant due to being imported already"##,1068 default_severity: Severity::Allow,1069 warn_since: None,1070 deny_since: None,1071 },1072 Lint {1073 label: "redundant_lifetimes",1074 description: r##"detects lifetime parameters that are redundant because they are equal to some other named lifetime"##,1075 default_severity: Severity::Allow,1076 warn_since: None,1077 deny_since: None,1078 },1079 Lint {1080 label: "redundant_semicolons",1081 description: r##"detects unnecessary trailing semicolons"##,1082 default_severity: Severity::Warning,1083 warn_since: None,1084 deny_since: None,1085 },1086 Lint {1087 label: "refining_impl_trait_internal",1088 description: r##"impl trait in impl method signature does not match trait method signature"##,1089 default_severity: Severity::Warning,1090 warn_since: None,1091 deny_since: None,1092 },1093 Lint {1094 label: "refining_impl_trait_reachable",1095 description: r##"impl trait in impl method signature does not match trait method signature"##,1096 default_severity: Severity::Warning,1097 warn_since: None,1098 deny_since: None,1099 },1100 Lint {1101 label: "renamed_and_removed_lints",1102 description: r##"lints that have been renamed or removed"##,1103 default_severity: Severity::Warning,1104 warn_since: None,1105 deny_since: None,1106 },1107 Lint {1108 label: "repr_c_enums_larger_than_int",1109 description: r##"repr(C) enums with discriminant values that do not fit into a C int"##,1110 default_severity: Severity::Warning,1111 warn_since: None,1112 deny_since: None,1113 },1114 Lint {1115 label: "repr_transparent_non_zst_fields",1116 description: r##"transparent type contains an external ZST that is marked #[non_exhaustive] or contains private fields"##,1117 default_severity: Severity::Error,1118 warn_since: None,1119 deny_since: None,1120 },1121 Lint {1122 label: "resolving_to_items_shadowing_supertrait_items",1123 description: r##"detects when a supertrait item is shadowed by a subtrait item"##,1124 default_severity: Severity::Allow,1125 warn_since: None,1126 deny_since: None,1127 },1128 Lint {1129 label: "rtsan_nonblocking_async",1130 description: r##"detects incompatible uses of `#[sanitize(realtime = "nonblocking")]` on async functions"##,1131 default_severity: Severity::Warning,1132 warn_since: None,1133 deny_since: None,1134 },1135 Lint {1136 label: "rust_2021_incompatible_closure_captures",1137 description: r##"detects closures affected by Rust 2021 changes"##,1138 default_severity: Severity::Allow,1139 warn_since: None,1140 deny_since: None,1141 },1142 Lint {1143 label: "rust_2021_incompatible_or_patterns",1144 description: r##"detects usage of old versions of or-patterns"##,1145 default_severity: Severity::Allow,1146 warn_since: None,1147 deny_since: None,1148 },1149 Lint {1150 label: "rust_2021_prefixes_incompatible_syntax",1151 description: r##"identifiers that will be parsed as a prefix in Rust 2021"##,1152 default_severity: Severity::Allow,1153 warn_since: None,1154 deny_since: None,1155 },1156 Lint {1157 label: "rust_2021_prelude_collisions",1158 description: r##"detects the usage of trait methods which are ambiguous with traits added to the prelude in future editions"##,1159 default_severity: Severity::Allow,1160 warn_since: None,1161 deny_since: None,1162 },1163 Lint {1164 label: "rust_2024_guarded_string_incompatible_syntax",1165 description: r##"will be parsed as a guarded string in Rust 2024"##,1166 default_severity: Severity::Allow,1167 warn_since: None,1168 deny_since: None,1169 },1170 Lint {1171 label: "rust_2024_incompatible_pat",1172 description: r##"detects patterns whose meaning will change in Rust 2024"##,1173 default_severity: Severity::Allow,1174 warn_since: None,1175 deny_since: None,1176 },1177 Lint {1178 label: "rust_2024_prelude_collisions",1179 description: r##"detects the usage of trait methods which are ambiguous with traits added to the prelude in future editions"##,1180 default_severity: Severity::Allow,1181 warn_since: None,1182 deny_since: None,1183 },1184 Lint {1185 label: "self_constructor_from_outer_item",1186 description: r##"detect unsupported use of `Self` from outer item"##,1187 default_severity: Severity::Warning,1188 warn_since: None,1189 deny_since: None,1190 },1191 Lint {1192 label: "semicolon_in_expressions_from_macros",1193 description: r##"trailing semicolon in macro body used as expression"##,1194 default_severity: Severity::Error,1195 warn_since: None,1196 deny_since: None,1197 },1198 Lint {1199 label: "shadowing_supertrait_items",1200 description: r##"detects when a supertrait item is shadowed by a subtrait item"##,1201 default_severity: Severity::Allow,1202 warn_since: None,1203 deny_since: None,1204 },1205 Lint {1206 label: "single_use_lifetimes",1207 description: r##"detects lifetime parameters that are only used once"##,1208 default_severity: Severity::Allow,1209 warn_since: None,1210 deny_since: None,1211 },1212 Lint {1213 label: "special_module_name",1214 description: r##"module declarations for files with a special meaning"##,1215 default_severity: Severity::Warning,1216 warn_since: None,1217 deny_since: None,1218 },1219 Lint {1220 label: "stable_features",1221 description: r##"stable features found in `#[feature]` directive"##,1222 default_severity: Severity::Warning,1223 warn_since: None,1224 deny_since: None,1225 },1226 Lint {1227 label: "static_mut_refs",1228 description: r##"creating a shared reference to mutable static"##,1229 default_severity: Severity::Warning,1230 warn_since: None,1231 deny_since: Some(Edition::Edition2024),1232 },1233 Lint {1234 label: "suspicious_double_ref_op",1235 description: r##"suspicious call of trait method on `&&T`"##,1236 default_severity: Severity::Warning,1237 warn_since: None,1238 deny_since: None,1239 },1240 Lint {1241 label: "tail_call_track_caller",1242 description: r##"detects tail calls of functions marked with `#[track_caller]`"##,1243 default_severity: Severity::Warning,1244 warn_since: None,1245 deny_since: None,1246 },1247 Lint {1248 label: "tail_expr_drop_order",1249 description: r##"Detect and warn on significant change in drop order in tail expression location"##,1250 default_severity: Severity::Allow,1251 warn_since: None,1252 deny_since: None,1253 },1254 Lint {1255 label: "test_unstable_lint",1256 description: r##"this unstable lint is only for testing"##,1257 default_severity: Severity::Error,1258 warn_since: None,1259 deny_since: None,1260 },1261 Lint {1262 label: "text_direction_codepoint_in_comment",1263 description: r##"invisible directionality-changing codepoints in comment"##,1264 default_severity: Severity::Error,1265 warn_since: None,1266 deny_since: None,1267 },1268 Lint {1269 label: "text_direction_codepoint_in_literal",1270 description: r##"detect special Unicode codepoints that affect the visual representation of text on screen, changing the direction in which text flows"##,1271 default_severity: Severity::Error,1272 warn_since: None,1273 deny_since: None,1274 },1275 Lint {1276 label: "trivial_bounds",1277 description: r##"these bounds don't depend on an type parameters"##,1278 default_severity: Severity::Warning,1279 warn_since: None,1280 deny_since: None,1281 },1282 Lint {1283 label: "trivial_casts",1284 description: r##"detects trivial casts which could be removed"##,1285 default_severity: Severity::Allow,1286 warn_since: None,1287 deny_since: None,1288 },1289 Lint {1290 label: "trivial_numeric_casts",1291 description: r##"detects trivial casts of numeric types which could be removed"##,1292 default_severity: Severity::Allow,1293 warn_since: None,1294 deny_since: None,1295 },1296 Lint {1297 label: "type_alias_bounds",1298 description: r##"bounds in type aliases are not enforced"##,1299 default_severity: Severity::Warning,1300 warn_since: None,1301 deny_since: None,1302 },1303 Lint {1304 label: "tyvar_behind_raw_pointer",1305 description: r##"raw pointer to an inference variable"##,1306 default_severity: Severity::Warning,1307 warn_since: None,1308 deny_since: None,1309 },1310 Lint {1311 label: "uncommon_codepoints",1312 description: r##"detects uncommon Unicode codepoints in identifiers"##,1313 default_severity: Severity::Warning,1314 warn_since: None,1315 deny_since: None,1316 },1317 Lint {1318 label: "unconditional_panic",1319 description: r##"operation will cause a panic at runtime"##,1320 default_severity: Severity::Error,1321 warn_since: None,1322 deny_since: None,1323 },1324 Lint {1325 label: "unconditional_recursion",1326 description: r##"functions that cannot return without calling themselves"##,1327 default_severity: Severity::Warning,1328 warn_since: None,1329 deny_since: None,1330 },1331 Lint {1332 label: "uncovered_param_in_projection",1333 description: r##"impl contains type parameters that are not covered"##,1334 default_severity: Severity::Warning,1335 warn_since: None,1336 deny_since: None,1337 },1338 Lint {1339 label: "undropped_manually_drops",1340 description: r##"calls to `std::mem::drop` with `std::mem::ManuallyDrop` instead of it's inner value"##,1341 default_severity: Severity::Error,1342 warn_since: None,1343 deny_since: None,1344 },1345 Lint {1346 label: "unexpected_cfgs",1347 description: r##"detects unexpected names and values in `#[cfg]` conditions"##,1348 default_severity: Severity::Warning,1349 warn_since: None,1350 deny_since: None,1351 },1352 Lint {1353 label: "unfulfilled_lint_expectations",1354 description: r##"unfulfilled lint expectation"##,1355 default_severity: Severity::Warning,1356 warn_since: None,1357 deny_since: None,1358 },1359 Lint {1360 label: "ungated_async_fn_track_caller",1361 description: r##"enabling track_caller on an async fn is a no-op unless the async_fn_track_caller feature is enabled"##,1362 default_severity: Severity::Warning,1363 warn_since: None,1364 deny_since: None,1365 },1366 Lint {1367 label: "uninhabited_static",1368 description: r##"uninhabited static"##,1369 default_severity: Severity::Error,1370 warn_since: None,1371 deny_since: None,1372 },1373 Lint {1374 label: "unit_bindings",1375 description: r##"binding is useless because it has the unit `()` type"##,1376 default_severity: Severity::Allow,1377 warn_since: None,1378 deny_since: None,1379 },1380 Lint {1381 label: "unknown_crate_types",1382 description: r##"unknown crate type found in `#[crate_type]` directive"##,1383 default_severity: Severity::Error,1384 warn_since: None,1385 deny_since: None,1386 },1387 Lint {1388 label: "unknown_diagnostic_attributes",1389 description: r##"detects unknown diagnostic attributes"##,1390 default_severity: Severity::Warning,1391 warn_since: None,1392 deny_since: None,1393 },1394 Lint {1395 label: "unknown_lints",1396 description: r##"unrecognized lint attribute"##,1397 default_severity: Severity::Warning,1398 warn_since: None,1399 deny_since: None,1400 },1401 Lint {1402 label: "unnameable_test_items",1403 description: r##"detects an item that cannot be named being marked as `#[test_case]`"##,1404 default_severity: Severity::Warning,1405 warn_since: None,1406 deny_since: None,1407 },1408 Lint {1409 label: "unnameable_types",1410 description: r##"effective visibility of a type is larger than the area in which it can be named"##,1411 default_severity: Severity::Allow,1412 warn_since: None,1413 deny_since: None,1414 },1415 Lint {1416 label: "unnecessary_transmutes",1417 description: r##"detects transmutes that can also be achieved by other operations"##,1418 default_severity: Severity::Warning,1419 warn_since: None,1420 deny_since: None,1421 },1422 Lint {1423 label: "unpredictable_function_pointer_comparisons",1424 description: r##"detects unpredictable function pointer comparisons"##,1425 default_severity: Severity::Warning,1426 warn_since: None,1427 deny_since: None,1428 },1429 Lint {1430 label: "unqualified_local_imports",1431 description: r##"`use` of a local item without leading `self::`, `super::`, or `crate::`"##,1432 default_severity: Severity::Allow,1433 warn_since: None,1434 deny_since: None,1435 },1436 Lint {1437 label: "unreachable_cfg_select_predicates",1438 description: r##"detects unreachable configuration predicates in the cfg_select macro"##,1439 default_severity: Severity::Warning,1440 warn_since: None,1441 deny_since: None,1442 },1443 Lint {1444 label: "unreachable_code",1445 description: r##"detects unreachable code paths"##,1446 default_severity: Severity::Warning,1447 warn_since: None,1448 deny_since: None,1449 },1450 Lint {1451 label: "unreachable_patterns",1452 description: r##"detects unreachable patterns"##,1453 default_severity: Severity::Warning,1454 warn_since: None,1455 deny_since: None,1456 },1457 Lint {1458 label: "unreachable_pub",1459 description: r##"`pub` items not reachable from crate root"##,1460 default_severity: Severity::Allow,1461 warn_since: None,1462 deny_since: None,1463 },1464 Lint {1465 label: "unsafe_attr_outside_unsafe",1466 description: r##"detects unsafe attributes outside of unsafe"##,1467 default_severity: Severity::Allow,1468 warn_since: None,1469 deny_since: None,1470 },1471 Lint {1472 label: "unsafe_code",1473 description: r##"usage of `unsafe` code and other potentially unsound constructs"##,1474 default_severity: Severity::Allow,1475 warn_since: None,1476 deny_since: None,1477 },1478 Lint {1479 label: "unsafe_op_in_unsafe_fn",1480 description: r##"unsafe operations in unsafe functions without an explicit unsafe block are deprecated"##,1481 default_severity: Severity::Allow,1482 warn_since: Some(Edition::Edition2024),1483 deny_since: None,1484 },1485 Lint {1486 label: "unstable_features",1487 description: r##"enabling unstable features"##,1488 default_severity: Severity::Allow,1489 warn_since: None,1490 deny_since: None,1491 },1492 Lint {1493 label: "unstable_name_collisions",1494 description: r##"detects name collision with an existing but unstable method"##,1495 default_severity: Severity::Warning,1496 warn_since: None,1497 deny_since: None,1498 },1499 Lint {1500 label: "unstable_syntax_pre_expansion",1501 description: r##"unstable syntax can change at any point in the future, causing a hard error!"##,1502 default_severity: Severity::Warning,1503 warn_since: None,1504 deny_since: None,1505 },1506 Lint {1507 label: "unsupported_calling_conventions",1508 description: r##"use of unsupported calling convention"##,1509 default_severity: Severity::Warning,1510 warn_since: None,1511 deny_since: None,1512 },1513 Lint {1514 label: "unused_allocation",1515 description: r##"detects unnecessary allocations that can be eliminated"##,1516 default_severity: Severity::Warning,1517 warn_since: None,1518 deny_since: None,1519 },1520 Lint {1521 label: "unused_assignments",1522 description: r##"detect assignments that will never be read"##,1523 default_severity: Severity::Warning,1524 warn_since: None,1525 deny_since: None,1526 },1527 Lint {1528 label: "unused_associated_type_bounds",1529 description: r##"detects unused `Foo = Bar` bounds in `dyn Trait<Foo = Bar>`"##,1530 default_severity: Severity::Warning,1531 warn_since: None,1532 deny_since: None,1533 },1534 Lint {1535 label: "unused_attributes",1536 description: r##"detects attributes that were not used by the compiler"##,1537 default_severity: Severity::Warning,1538 warn_since: None,1539 deny_since: None,1540 },1541 Lint {1542 label: "unused_braces",1543 description: r##"unnecessary braces around an expression"##,1544 default_severity: Severity::Warning,1545 warn_since: None,1546 deny_since: None,1547 },1548 Lint {1549 label: "unused_comparisons",1550 description: r##"comparisons made useless by limits of the types involved"##,1551 default_severity: Severity::Warning,1552 warn_since: None,1553 deny_since: None,1554 },1555 Lint {1556 label: "unused_crate_dependencies",1557 description: r##"crate dependencies that are never used"##,1558 default_severity: Severity::Allow,1559 warn_since: None,1560 deny_since: None,1561 },1562 Lint {1563 label: "unused_doc_comments",1564 description: r##"detects doc comments that aren't used by rustdoc"##,1565 default_severity: Severity::Warning,1566 warn_since: None,1567 deny_since: None,1568 },1569 Lint {1570 label: "unused_extern_crates",1571 description: r##"extern crates that are never used"##,1572 default_severity: Severity::Allow,1573 warn_since: None,1574 deny_since: None,1575 },1576 Lint {1577 label: "unused_features",1578 description: r##"unused features found in crate-level `#[feature]` directives"##,1579 default_severity: Severity::Warning,1580 warn_since: None,1581 deny_since: None,1582 },1583 Lint {1584 label: "unused_import_braces",1585 description: r##"unnecessary braces around an imported item"##,1586 default_severity: Severity::Allow,1587 warn_since: None,1588 deny_since: None,1589 },1590 Lint {1591 label: "unused_imports",1592 description: r##"imports that are never used"##,1593 default_severity: Severity::Warning,1594 warn_since: None,1595 deny_since: None,1596 },1597 Lint {1598 label: "unused_labels",1599 description: r##"detects labels that are never used"##,1600 default_severity: Severity::Warning,1601 warn_since: None,1602 deny_since: None,1603 },1604 Lint {1605 label: "unused_lifetimes",1606 description: r##"detects lifetime parameters that are never used"##,1607 default_severity: Severity::Allow,1608 warn_since: None,1609 deny_since: None,1610 },1611 Lint {1612 label: "unused_macro_rules",1613 description: r##"detects macro rules that were not used"##,1614 default_severity: Severity::Allow,1615 warn_since: None,1616 deny_since: None,1617 },1618 Lint {1619 label: "unused_macros",1620 description: r##"detects macros that were not used"##,1621 default_severity: Severity::Warning,1622 warn_since: None,1623 deny_since: None,1624 },1625 Lint {1626 label: "unused_must_use",1627 description: r##"unused result of a type flagged as `#[must_use]`"##,1628 default_severity: Severity::Warning,1629 warn_since: None,1630 deny_since: None,1631 },1632 Lint {1633 label: "unused_mut",1634 description: r##"detect mut variables which don't need to be mutable"##,1635 default_severity: Severity::Warning,1636 warn_since: None,1637 deny_since: None,1638 },1639 Lint {1640 label: "unused_parens",1641 description: r##"`if`, `match`, `while` and `return` do not need parentheses"##,1642 default_severity: Severity::Warning,1643 warn_since: None,1644 deny_since: None,1645 },1646 Lint {1647 label: "unused_qualifications",1648 description: r##"detects unnecessarily qualified names"##,1649 default_severity: Severity::Allow,1650 warn_since: None,1651 deny_since: None,1652 },1653 Lint {1654 label: "unused_results",1655 description: r##"unused result of an expression in a statement"##,1656 default_severity: Severity::Allow,1657 warn_since: None,1658 deny_since: None,1659 },1660 Lint {1661 label: "unused_unsafe",1662 description: r##"unnecessary use of an `unsafe` block"##,1663 default_severity: Severity::Warning,1664 warn_since: None,1665 deny_since: None,1666 },1667 Lint {1668 label: "unused_variables",1669 description: r##"detect variables which are not used in any way"##,1670 default_severity: Severity::Warning,1671 warn_since: None,1672 deny_since: None,1673 },1674 Lint {1675 label: "unused_visibilities",1676 description: r##"detect visibility qualifiers on `const _` items"##,1677 default_severity: Severity::Warning,1678 warn_since: None,1679 deny_since: None,1680 },1681 Lint {1682 label: "useless_deprecated",1683 description: r##"detects deprecation attributes with no effect"##,1684 default_severity: Severity::Error,1685 warn_since: None,1686 deny_since: None,1687 },1688 Lint {1689 label: "useless_ptr_null_checks",1690 description: r##"useless checking of non-null-typed pointer"##,1691 default_severity: Severity::Warning,1692 warn_since: None,1693 deny_since: None,1694 },1695 Lint {1696 label: "uses_power_alignment",1697 description: r##"Structs do not follow the power alignment rule under repr(C)"##,1698 default_severity: Severity::Warning,1699 warn_since: None,1700 deny_since: None,1701 },1702 Lint {1703 label: "varargs_without_pattern",1704 description: r##"detects usage of `...` arguments without a pattern in non-foreign items"##,1705 default_severity: Severity::Error,1706 warn_since: None,1707 deny_since: None,1708 },1709 Lint {1710 label: "variant_size_differences",1711 description: r##"detects enums with widely varying variant sizes"##,1712 default_severity: Severity::Allow,1713 warn_since: None,1714 deny_since: None,1715 },1716 Lint {1717 label: "warnings",1718 description: r##"mass-change the level for lints which produce warnings"##,1719 default_severity: Severity::Warning,1720 warn_since: None,1721 deny_since: None,1722 },1723 Lint {1724 label: "while_true",1725 description: r##"suggest using `loop { }` instead of `while true { }`"##,1726 default_severity: Severity::Warning,1727 warn_since: None,1728 deny_since: None,1729 },1730 Lint {1731 label: "deprecated_safe",1732 description: r##"lint group for: deprecated-safe-2024"##,1733 default_severity: Severity::Allow,1734 warn_since: None,1735 deny_since: None,1736 },1737 Lint {1738 label: "future_incompatible",1739 description: r##"lint group for: internal-eq-trait-method-impls, aarch64-softfloat-neon, ambiguous-associated-items, ambiguous-derive-helpers, ambiguous-glob-imported-traits, ambiguous-glob-imports, ambiguous-import-visibilities, ambiguous-panic-imports, coherence-leak-check, conflicting-repr-hints, const-evaluatable-unchecked, elided-lifetimes-in-associated-constant, float-literal-f32-fallback, forbidden-lint-groups, ill-formed-attribute-input, invalid-macro-export-arguments, invalid-type-param-default, late-bound-lifetime-arguments, legacy-derive-helpers, macro-expanded-macro-exports-accessed-by-absolute-paths, out-of-scope-macro-calls, patterns-in-fns-without-body, proc-macro-derive-resolution-fallback, pub-use-of-private-extern-crate, repr-c-enums-larger-than-int, repr-transparent-non-zst-fields, self-constructor-from-outer-item, semicolon-in-expressions-from-macros, uncovered-param-in-projection, uninhabited-static, unstable-name-collisions, unstable-syntax-pre-expansion, unsupported-calling-conventions, varargs-without-pattern"##,1740 default_severity: Severity::Allow,1741 warn_since: None,1742 deny_since: None,1743 },1744 Lint {1745 label: "keyword_idents",1746 description: r##"lint group for: keyword-idents-2018, keyword-idents-2024"##,1747 default_severity: Severity::Allow,1748 warn_since: None,1749 deny_since: None,1750 },1751 Lint {1752 label: "let_underscore",1753 description: r##"lint group for: let-underscore-drop, let-underscore-lock"##,1754 default_severity: Severity::Allow,1755 warn_since: None,1756 deny_since: None,1757 },1758 Lint {1759 label: "nonstandard_style",1760 description: r##"lint group for: non-camel-case-types, non-snake-case, non-upper-case-globals"##,1761 default_severity: Severity::Allow,1762 warn_since: None,1763 deny_since: None,1764 },1765 Lint {1766 label: "refining_impl_trait",1767 description: r##"lint group for: refining-impl-trait-reachable, refining-impl-trait-internal"##,1768 default_severity: Severity::Allow,1769 warn_since: None,1770 deny_since: None,1771 },1772 Lint {1773 label: "rust_2018_compatibility",1774 description: r##"lint group for: keyword-idents-2018, anonymous-parameters, absolute-paths-not-starting-with-crate, tyvar-behind-raw-pointer"##,1775 default_severity: Severity::Allow,1776 warn_since: None,1777 deny_since: None,1778 },1779 Lint {1780 label: "rust_2018_idioms",1781 description: r##"lint group for: bare-trait-objects, unused-extern-crates, ellipsis-inclusive-range-patterns, elided-lifetimes-in-paths, explicit-outlives-requirements"##,1782 default_severity: Severity::Allow,1783 warn_since: None,1784 deny_since: None,1785 },1786 Lint {1787 label: "rust_2021_compatibility",1788 description: r##"lint group for: ellipsis-inclusive-range-patterns, array-into-iter, non-fmt-panics, bare-trait-objects, rust-2021-incompatible-closure-captures, rust-2021-incompatible-or-patterns, rust-2021-prefixes-incompatible-syntax, rust-2021-prelude-collisions"##,1789 default_severity: Severity::Allow,1790 warn_since: None,1791 deny_since: None,1792 },1793 Lint {1794 label: "rust_2024_compatibility",1795 description: r##"lint group for: keyword-idents-2024, edition-2024-expr-fragment-specifier, boxed-slice-into-iter, impl-trait-overcaptures, if-let-rescope, static-mut-refs, dependency-on-unit-never-type-fallback, deprecated-safe-2024, missing-unsafe-on-extern, never-type-fallback-flowing-into-unsafe, rust-2024-guarded-string-incompatible-syntax, rust-2024-incompatible-pat, rust-2024-prelude-collisions, tail-expr-drop-order, unsafe-attr-outside-unsafe, unsafe-op-in-unsafe-fn"##,1796 default_severity: Severity::Allow,1797 warn_since: None,1798 deny_since: None,1799 },1800 Lint {1801 label: "unknown_or_malformed_diagnostic_attributes",1802 description: r##"lint group for: malformed-diagnostic-attributes, malformed-diagnostic-format-literals, misplaced-diagnostic-attributes, unknown-diagnostic-attributes"##,1803 default_severity: Severity::Allow,1804 warn_since: None,1805 deny_since: None,1806 },1807 Lint {1808 label: "unused",1809 description: r##"lint group for: unused-imports, unused-variables, unused-visibilities, unused-assignments, dead-code, unused-mut, unreachable-code, unreachable-patterns, unused-must-use, unused-unsafe, path-statements, unused-attributes, unused-macros, unused-macro-rules, unused-allocation, unused-doc-comments, unused-extern-crates, unused-features, unused-labels, unused-parens, unused-braces, redundant-semicolons, map-unit-fn"##,1810 default_severity: Severity::Allow,1811 warn_since: None,1812 deny_since: None,1813 },1814];18151816pub const DEFAULT_LINT_GROUPS: &[LintGroup] = &[1817 LintGroup {1818 lint: Lint {1819 label: "deprecated_safe",1820 description: r##"lint group for: deprecated-safe-2024"##,1821 default_severity: Severity::Allow,1822 warn_since: None,1823 deny_since: None,1824 },1825 children: &["deprecated_safe_2024"],1826 },1827 LintGroup {1828 lint: Lint {1829 label: "future_incompatible",1830 description: r##"lint group for: internal-eq-trait-method-impls, aarch64-softfloat-neon, ambiguous-associated-items, ambiguous-derive-helpers, ambiguous-glob-imported-traits, ambiguous-glob-imports, ambiguous-import-visibilities, ambiguous-panic-imports, coherence-leak-check, conflicting-repr-hints, const-evaluatable-unchecked, elided-lifetimes-in-associated-constant, float-literal-f32-fallback, forbidden-lint-groups, ill-formed-attribute-input, invalid-macro-export-arguments, invalid-type-param-default, late-bound-lifetime-arguments, legacy-derive-helpers, macro-expanded-macro-exports-accessed-by-absolute-paths, out-of-scope-macro-calls, patterns-in-fns-without-body, proc-macro-derive-resolution-fallback, pub-use-of-private-extern-crate, repr-c-enums-larger-than-int, repr-transparent-non-zst-fields, self-constructor-from-outer-item, semicolon-in-expressions-from-macros, uncovered-param-in-projection, uninhabited-static, unstable-name-collisions, unstable-syntax-pre-expansion, unsupported-calling-conventions, varargs-without-pattern"##,1831 default_severity: Severity::Allow,1832 warn_since: None,1833 deny_since: None,1834 },1835 children: &[1836 "internal_eq_trait_method_impls",1837 "aarch64_softfloat_neon",1838 "ambiguous_associated_items",1839 "ambiguous_derive_helpers",1840 "ambiguous_glob_imported_traits",1841 "ambiguous_glob_imports",1842 "ambiguous_import_visibilities",1843 "ambiguous_panic_imports",1844 "coherence_leak_check",1845 "conflicting_repr_hints",1846 "const_evaluatable_unchecked",1847 "elided_lifetimes_in_associated_constant",1848 "float_literal_f32_fallback",1849 "forbidden_lint_groups",1850 "ill_formed_attribute_input",1851 "invalid_macro_export_arguments",1852 "invalid_type_param_default",1853 "late_bound_lifetime_arguments",1854 "legacy_derive_helpers",1855 "macro_expanded_macro_exports_accessed_by_absolute_paths",1856 "out_of_scope_macro_calls",1857 "patterns_in_fns_without_body",1858 "proc_macro_derive_resolution_fallback",1859 "pub_use_of_private_extern_crate",1860 "repr_c_enums_larger_than_int",1861 "repr_transparent_non_zst_fields",1862 "self_constructor_from_outer_item",1863 "semicolon_in_expressions_from_macros",1864 "uncovered_param_in_projection",1865 "uninhabited_static",1866 "unstable_name_collisions",1867 "unstable_syntax_pre_expansion",1868 "unsupported_calling_conventions",1869 "varargs_without_pattern",1870 ],1871 },1872 LintGroup {1873 lint: Lint {1874 label: "keyword_idents",1875 description: r##"lint group for: keyword-idents-2018, keyword-idents-2024"##,1876 default_severity: Severity::Allow,1877 warn_since: None,1878 deny_since: None,1879 },1880 children: &["keyword_idents_2018", "keyword_idents_2024"],1881 },1882 LintGroup {1883 lint: Lint {1884 label: "let_underscore",1885 description: r##"lint group for: let-underscore-drop, let-underscore-lock"##,1886 default_severity: Severity::Allow,1887 warn_since: None,1888 deny_since: None,1889 },1890 children: &["let_underscore_drop", "let_underscore_lock"],1891 },1892 LintGroup {1893 lint: Lint {1894 label: "nonstandard_style",1895 description: r##"lint group for: non-camel-case-types, non-snake-case, non-upper-case-globals"##,1896 default_severity: Severity::Allow,1897 warn_since: None,1898 deny_since: None,1899 },1900 children: &["non_camel_case_types", "non_snake_case", "non_upper_case_globals"],1901 },1902 LintGroup {1903 lint: Lint {1904 label: "refining_impl_trait",1905 description: r##"lint group for: refining-impl-trait-reachable, refining-impl-trait-internal"##,1906 default_severity: Severity::Allow,1907 warn_since: None,1908 deny_since: None,1909 },1910 children: &["refining_impl_trait_reachable", "refining_impl_trait_internal"],1911 },1912 LintGroup {1913 lint: Lint {1914 label: "rust_2018_compatibility",1915 description: r##"lint group for: keyword-idents-2018, anonymous-parameters, absolute-paths-not-starting-with-crate, tyvar-behind-raw-pointer"##,1916 default_severity: Severity::Allow,1917 warn_since: None,1918 deny_since: None,1919 },1920 children: &[1921 "keyword_idents_2018",1922 "anonymous_parameters",1923 "absolute_paths_not_starting_with_crate",1924 "tyvar_behind_raw_pointer",1925 ],1926 },1927 LintGroup {1928 lint: Lint {1929 label: "rust_2018_idioms",1930 description: r##"lint group for: bare-trait-objects, unused-extern-crates, ellipsis-inclusive-range-patterns, elided-lifetimes-in-paths, explicit-outlives-requirements"##,1931 default_severity: Severity::Allow,1932 warn_since: None,1933 deny_since: None,1934 },1935 children: &[1936 "bare_trait_objects",1937 "unused_extern_crates",1938 "ellipsis_inclusive_range_patterns",1939 "elided_lifetimes_in_paths",1940 "explicit_outlives_requirements",1941 ],1942 },1943 LintGroup {1944 lint: Lint {1945 label: "rust_2021_compatibility",1946 description: r##"lint group for: ellipsis-inclusive-range-patterns, array-into-iter, non-fmt-panics, bare-trait-objects, rust-2021-incompatible-closure-captures, rust-2021-incompatible-or-patterns, rust-2021-prefixes-incompatible-syntax, rust-2021-prelude-collisions"##,1947 default_severity: Severity::Allow,1948 warn_since: None,1949 deny_since: None,1950 },1951 children: &[1952 "ellipsis_inclusive_range_patterns",1953 "array_into_iter",1954 "non_fmt_panics",1955 "bare_trait_objects",1956 "rust_2021_incompatible_closure_captures",1957 "rust_2021_incompatible_or_patterns",1958 "rust_2021_prefixes_incompatible_syntax",1959 "rust_2021_prelude_collisions",1960 ],1961 },1962 LintGroup {1963 lint: Lint {1964 label: "rust_2024_compatibility",1965 description: r##"lint group for: keyword-idents-2024, edition-2024-expr-fragment-specifier, boxed-slice-into-iter, impl-trait-overcaptures, if-let-rescope, static-mut-refs, dependency-on-unit-never-type-fallback, deprecated-safe-2024, missing-unsafe-on-extern, never-type-fallback-flowing-into-unsafe, rust-2024-guarded-string-incompatible-syntax, rust-2024-incompatible-pat, rust-2024-prelude-collisions, tail-expr-drop-order, unsafe-attr-outside-unsafe, unsafe-op-in-unsafe-fn"##,1966 default_severity: Severity::Allow,1967 warn_since: None,1968 deny_since: None,1969 },1970 children: &[1971 "keyword_idents_2024",1972 "edition_2024_expr_fragment_specifier",1973 "boxed_slice_into_iter",1974 "impl_trait_overcaptures",1975 "if_let_rescope",1976 "static_mut_refs",1977 "dependency_on_unit_never_type_fallback",1978 "deprecated_safe_2024",1979 "missing_unsafe_on_extern",1980 "never_type_fallback_flowing_into_unsafe",1981 "rust_2024_guarded_string_incompatible_syntax",1982 "rust_2024_incompatible_pat",1983 "rust_2024_prelude_collisions",1984 "tail_expr_drop_order",1985 "unsafe_attr_outside_unsafe",1986 "unsafe_op_in_unsafe_fn",1987 ],1988 },1989 LintGroup {1990 lint: Lint {1991 label: "unknown_or_malformed_diagnostic_attributes",1992 description: r##"lint group for: malformed-diagnostic-attributes, malformed-diagnostic-format-literals, misplaced-diagnostic-attributes, unknown-diagnostic-attributes"##,1993 default_severity: Severity::Allow,1994 warn_since: None,1995 deny_since: None,1996 },1997 children: &[1998 "malformed_diagnostic_attributes",1999 "malformed_diagnostic_format_literals",2000 "misplaced_diagnostic_attributes",
Findings
✓ No findings reported for this file.