diff --git a/compiler/rustc_arena/src/lib.rs b/compiler/rustc_arena/src/lib.rs index f4900ece1cc51..d4967b2e63335 100644 --- a/compiler/rustc_arena/src/lib.rs +++ b/compiler/rustc_arena/src/lib.rs @@ -11,20 +11,23 @@ html_root_url = "https://doc.rust-lang.org/nightly/nightly-rustc/", test(no_crate_inject, attr(deny(warnings))) )] +// tidy-alphabetical-start +#![deny(rustc::diagnostic_outside_of_impl)] +#![deny(rustc::untranslatable_diagnostic)] +#![deny(unsafe_op_in_unsafe_fn)] +#![feature(decl_macro)] #![feature(dropck_eyepatch)] -#![feature(new_uninit)] #![feature(maybe_uninit_slice)] #![feature(min_specialization)] -#![feature(decl_macro)] +#![feature(new_uninit)] #![feature(pointer_byte_offsets)] #![feature(rustc_attrs)] -#![cfg_attr(test, feature(test))] #![feature(strict_provenance)] -#![deny(unsafe_op_in_unsafe_fn)] -#![deny(rustc::untranslatable_diagnostic)] -#![deny(rustc::diagnostic_outside_of_impl)] +// tidy-alphabetical-end #![cfg_attr(not(bootstrap), allow(internal_features))] -#![allow(clippy::mut_from_ref)] // Arena allocators are one of the places where this pattern is fine. +#![cfg_attr(test, feature(test))] +// Arena allocators are one of the places where this pattern is fine. +#![allow(clippy::mut_from_ref)] use smallvec::SmallVec; diff --git a/compiler/rustc_ast/src/lib.rs b/compiler/rustc_ast/src/lib.rs index b07ed1d1c741e..f95a87bca3fae 100644 --- a/compiler/rustc_ast/src/lib.rs +++ b/compiler/rustc_ast/src/lib.rs @@ -8,6 +8,9 @@ html_root_url = "https://doc.rust-lang.org/nightly/nightly-rustc/", test(attr(deny(warnings))) )] +// tidy-alphabetical-start +#![deny(rustc::diagnostic_outside_of_impl)] +#![deny(rustc::untranslatable_diagnostic)] #![feature(associated_type_bounds)] #![feature(box_patterns)] #![feature(const_trait_impl)] @@ -16,9 +19,8 @@ #![feature(min_specialization)] #![feature(negative_impls)] #![feature(stmt_expr_attributes)] +// tidy-alphabetical-end #![recursion_limit = "256"] -#![deny(rustc::untranslatable_diagnostic)] -#![deny(rustc::diagnostic_outside_of_impl)] #[macro_use] extern crate rustc_macros; diff --git a/compiler/rustc_ast_lowering/src/lib.rs b/compiler/rustc_ast_lowering/src/lib.rs index 89775bdee263e..fa4214d98da6d 100644 --- a/compiler/rustc_ast_lowering/src/lib.rs +++ b/compiler/rustc_ast_lowering/src/lib.rs @@ -30,12 +30,14 @@ //! get confused if the spans from leaf AST nodes occur in multiple places //! in the HIR, especially for multiple identifiers. +// tidy-alphabetical-start +#![deny(rustc::diagnostic_outside_of_impl)] +#![deny(rustc::untranslatable_diagnostic)] #![feature(box_patterns)] #![feature(let_chains)] #![feature(never_type)] +// tidy-alphabetical-end #![recursion_limit = "256"] -#![deny(rustc::untranslatable_diagnostic)] -#![deny(rustc::diagnostic_outside_of_impl)] #[macro_use] extern crate tracing; diff --git a/compiler/rustc_ast_passes/src/lib.rs b/compiler/rustc_ast_passes/src/lib.rs index 7db413c5bbd42..d4d3c81892eaa 100644 --- a/compiler/rustc_ast_passes/src/lib.rs +++ b/compiler/rustc_ast_passes/src/lib.rs @@ -4,10 +4,12 @@ //! //! The crate also contains other misc AST visitors, e.g. `node_count` and `show_span`. +// tidy-alphabetical-start #![feature(box_patterns)] #![feature(if_let_guard)] #![feature(iter_is_partitioned)] #![feature(let_chains)] +// tidy-alphabetical-end #![recursion_limit = "256"] #![deny(rustc::untranslatable_diagnostic)] #![deny(rustc::diagnostic_outside_of_impl)] diff --git a/compiler/rustc_ast_pretty/src/lib.rs b/compiler/rustc_ast_pretty/src/lib.rs index bf094af5f7bb0..04dac638a3c34 100644 --- a/compiler/rustc_ast_pretty/src/lib.rs +++ b/compiler/rustc_ast_pretty/src/lib.rs @@ -1,8 +1,10 @@ -#![deny(rustc::untranslatable_diagnostic)] +// tidy-alphabetical-start #![deny(rustc::diagnostic_outside_of_impl)] +#![deny(rustc::untranslatable_diagnostic)] #![feature(associated_type_bounds)] #![feature(box_patterns)] #![feature(with_negative_coherence)] +// tidy-alphabetical-end #![recursion_limit = "256"] mod helpers; diff --git a/compiler/rustc_attr/src/lib.rs b/compiler/rustc_attr/src/lib.rs index cfed2acfb3a41..7a8c638ea55e4 100644 --- a/compiler/rustc_attr/src/lib.rs +++ b/compiler/rustc_attr/src/lib.rs @@ -4,9 +4,11 @@ //! The goal is to move the definition of `MetaItem` and things that don't need to be in `syntax` //! to this crate. -#![feature(let_chains)] -#![deny(rustc::untranslatable_diagnostic)] +// tidy-alphabetical-start #![deny(rustc::diagnostic_outside_of_impl)] +#![deny(rustc::untranslatable_diagnostic)] +#![feature(let_chains)] +// tidy-alphabetical-end #[macro_use] extern crate rustc_macros; diff --git a/compiler/rustc_borrowck/src/lib.rs b/compiler/rustc_borrowck/src/lib.rs index efe525c224d0a..75a2a2c5d246c 100644 --- a/compiler/rustc_borrowck/src/lib.rs +++ b/compiler/rustc_borrowck/src/lib.rs @@ -1,15 +1,17 @@ //! This query borrow-checks the MIR to (further) ensure it is not broken. +// tidy-alphabetical-start #![feature(associated_type_bounds)] #![feature(box_patterns)] +#![feature(lazy_cell)] #![feature(let_chains)] #![feature(min_specialization)] #![feature(never_type)] -#![feature(lazy_cell)] #![feature(rustc_attrs)] #![feature(stmt_expr_attributes)] #![feature(trusted_step)] #![feature(try_blocks)] +// tidy-alphabetical-end #![recursion_limit = "256"] #![cfg_attr(not(bootstrap), allow(internal_features))] diff --git a/compiler/rustc_builtin_macros/src/lib.rs b/compiler/rustc_builtin_macros/src/lib.rs index ebf1448f55c99..d21c508d64e82 100644 --- a/compiler/rustc_builtin_macros/src/lib.rs +++ b/compiler/rustc_builtin_macros/src/lib.rs @@ -2,6 +2,7 @@ //! injecting code into the crate before it is lowered to HIR. #![doc(html_root_url = "https://doc.rust-lang.org/nightly/nightly-rustc/")] +// tidy-alphabetical-start #![feature(array_windows)] #![feature(box_patterns)] #![feature(decl_macro)] @@ -11,6 +12,7 @@ #![feature(lint_reasons)] #![feature(proc_macro_internals)] #![feature(proc_macro_quote)] +// tidy-alphabetical-end #![recursion_limit = "256"] extern crate proc_macro; diff --git a/compiler/rustc_codegen_cranelift/src/lib.rs b/compiler/rustc_codegen_cranelift/src/lib.rs index d01ded8abaa52..fe28958e39afb 100644 --- a/compiler/rustc_codegen_cranelift/src/lib.rs +++ b/compiler/rustc_codegen_cranelift/src/lib.rs @@ -1,8 +1,10 @@ -#![feature(rustc_private)] // Note: please avoid adding other feature gates where possible +#![feature(rustc_private)] +// tidy-alphabetical-start #![warn(rust_2018_idioms)] -#![warn(unused_lifetimes)] #![warn(unreachable_pub)] +#![warn(unused_lifetimes)] +// tidy-alphabetical-end extern crate jobserver; #[macro_use] diff --git a/compiler/rustc_codegen_gcc/src/lib.rs b/compiler/rustc_codegen_gcc/src/lib.rs index 697ae015fed9a..3bc2a80d08ec4 100644 --- a/compiler/rustc_codegen_gcc/src/lib.rs +++ b/compiler/rustc_codegen_gcc/src/lib.rs @@ -6,20 +6,22 @@ * TODO(antoyo): remove the patches. */ -#![feature( - rustc_private, - decl_macro, - associated_type_bounds, - never_type, - trusted_len, - hash_raw_entry -)] +// tidy-alphabetical-start #![allow(broken_intra_doc_links)] -#![recursion_limit="256"] +#![deny(rustc::diagnostic_outside_of_impl)] +#![deny(rustc::untranslatable_diagnostic)] #![warn(rust_2018_idioms)] #![warn(unused_lifetimes)] -#![deny(rustc::untranslatable_diagnostic)] -#![deny(rustc::diagnostic_outside_of_impl)] +// tidy-alphabetical-end +// tidy-alphabetical-start +#![feature(associated_type_bounds)] +#![feature(decl_macro)] +#![feature(hash_raw_entry)] +#![feature(never_type)] +#![feature(rustc_private)] +#![feature(trusted_len)] +// tidy-alphabetical-end +#![recursion_limit="256"] extern crate rustc_apfloat; extern crate rustc_ast; diff --git a/compiler/rustc_codegen_llvm/src/lib.rs b/compiler/rustc_codegen_llvm/src/lib.rs index d283299ac46b4..fa15807b6a129 100644 --- a/compiler/rustc_codegen_llvm/src/lib.rs +++ b/compiler/rustc_codegen_llvm/src/lib.rs @@ -5,16 +5,18 @@ //! This API is completely unstable and subject to change. #![doc(html_root_url = "https://doc.rust-lang.org/nightly/nightly-rustc/")] +// tidy-alphabetical-start +#![allow(rustc::potential_query_instability)] +#![deny(rustc::diagnostic_outside_of_impl)] +#![deny(rustc::untranslatable_diagnostic)] #![feature(extern_types)] #![feature(hash_raw_entry)] +#![feature(impl_trait_in_assoc_type)] #![feature(iter_intersperse)] #![feature(let_chains)] #![feature(never_type)] -#![feature(impl_trait_in_assoc_type)] +// tidy-alphabetical-end #![recursion_limit = "256"] -#![allow(rustc::potential_query_instability)] -#![deny(rustc::untranslatable_diagnostic)] -#![deny(rustc::diagnostic_outside_of_impl)] #[macro_use] extern crate rustc_macros; diff --git a/compiler/rustc_codegen_ssa/src/lib.rs b/compiler/rustc_codegen_ssa/src/lib.rs index 7bed3fa615034..f6d954f5a19a3 100644 --- a/compiler/rustc_codegen_ssa/src/lib.rs +++ b/compiler/rustc_codegen_ssa/src/lib.rs @@ -1,4 +1,6 @@ #![doc(html_root_url = "https://doc.rust-lang.org/nightly/nightly-rustc/")] +// tidy-alphabetical-start +#![allow(rustc::potential_query_instability)] #![feature(associated_type_bounds)] #![feature(box_patterns)] #![feature(if_let_guard)] @@ -7,8 +9,8 @@ #![feature(never_type)] #![feature(strict_provenance)] #![feature(try_blocks)] +// tidy-alphabetical-end #![recursion_limit = "256"] -#![allow(rustc::potential_query_instability)] //! This crate contains codegen code that is used by all codegen backends (LLVM and others). //! The backend-agnostic functions of this crate use functions defined in various traits that diff --git a/compiler/rustc_const_eval/src/lib.rs b/compiler/rustc_const_eval/src/lib.rs index c126f749bf328..6c90e0bc8ac6d 100644 --- a/compiler/rustc_const_eval/src/lib.rs +++ b/compiler/rustc_const_eval/src/lib.rs @@ -4,23 +4,25 @@ Rust MIR: a lowered representation of Rust. */ +// tidy-alphabetical-start #![deny(rustc::untranslatable_diagnostic)] #![feature(assert_matches)] #![feature(box_patterns)] #![feature(decl_macro)] #![feature(exact_size_is_empty)] +#![feature(if_let_guard)] #![feature(let_chains)] #![feature(map_try_insert)] #![feature(min_specialization)] -#![feature(slice_ptr_get)] -#![feature(option_get_or_insert_default)] #![feature(never_type)] +#![feature(option_get_or_insert_default)] +#![feature(slice_ptr_get)] #![feature(trait_alias)] #![feature(trusted_len)] #![feature(trusted_step)] #![feature(try_blocks)] #![feature(yeet_expr)] -#![feature(if_let_guard)] +// tidy-alphabetical-end #![recursion_limit = "256"] #[macro_use] diff --git a/compiler/rustc_data_structures/src/lib.rs b/compiler/rustc_data_structures/src/lib.rs index 33772089744d1..3578a5c1fd388 100644 --- a/compiler/rustc_data_structures/src/lib.rs +++ b/compiler/rustc_data_structures/src/lib.rs @@ -7,38 +7,40 @@ //! This API is completely unstable and subject to change. #![doc(html_root_url = "https://doc.rust-lang.org/nightly/nightly-rustc/")] +// tidy-alphabetical-start +#![allow(rustc::default_hash_types)] +#![allow(rustc::potential_query_instability)] +#![deny(rustc::diagnostic_outside_of_impl)] +#![deny(rustc::untranslatable_diagnostic)] +#![deny(unsafe_op_in_unsafe_fn)] +#![feature(allocator_api)] #![feature(array_windows)] #![feature(associated_type_bounds)] #![feature(auto_traits)] #![feature(cell_leak)] #![feature(core_intrinsics)] #![feature(extend_one)] +#![feature(get_mut_unchecked)] #![feature(hash_raw_entry)] #![feature(hasher_prefixfree_extras)] +#![feature(lazy_cell)] +#![feature(lint_reasons)] +#![feature(macro_metavar_expr)] #![feature(maybe_uninit_uninit_array)] #![feature(min_specialization)] +#![feature(negative_impls)] #![feature(never_type)] -#![feature(type_alias_impl_trait)] #![feature(new_uninit)] -#![feature(lazy_cell)] +#![feature(ptr_alignment_type)] #![feature(rustc_attrs)] -#![feature(negative_impls)] +#![feature(strict_provenance)] #![feature(test)] #![feature(thread_id_value)] -#![feature(vec_into_raw_parts)] -#![feature(allocator_api)] -#![feature(get_mut_unchecked)] -#![feature(lint_reasons)] +#![feature(type_alias_impl_trait)] #![feature(unwrap_infallible)] -#![feature(strict_provenance)] -#![feature(ptr_alignment_type)] -#![feature(macro_metavar_expr)] -#![allow(rustc::default_hash_types)] -#![allow(rustc::potential_query_instability)] -#![deny(rustc::untranslatable_diagnostic)] -#![deny(rustc::diagnostic_outside_of_impl)] +#![feature(vec_into_raw_parts)] +// tidy-alphabetical-end #![cfg_attr(not(bootstrap), allow(internal_features))] -#![deny(unsafe_op_in_unsafe_fn)] #[macro_use] extern crate tracing; diff --git a/compiler/rustc_error_messages/src/lib.rs b/compiler/rustc_error_messages/src/lib.rs index 3bf15505090cf..a00bdd02df441 100644 --- a/compiler/rustc_error_messages/src/lib.rs +++ b/compiler/rustc_error_messages/src/lib.rs @@ -1,9 +1,11 @@ -#![feature(let_chains)] +// tidy-alphabetical-start +#![deny(rustc::diagnostic_outside_of_impl)] +#![deny(rustc::untranslatable_diagnostic)] #![feature(lazy_cell)] +#![feature(let_chains)] #![feature(rustc_attrs)] #![feature(type_alias_impl_trait)] -#![deny(rustc::untranslatable_diagnostic)] -#![deny(rustc::diagnostic_outside_of_impl)] +// tidy-alphabetical-end #![cfg_attr(not(bootstrap), allow(internal_features))] #[macro_use] diff --git a/compiler/rustc_errors/src/lib.rs b/compiler/rustc_errors/src/lib.rs index 7d660d2dbaa99..0872797ab4c3b 100644 --- a/compiler/rustc_errors/src/lib.rs +++ b/compiler/rustc_errors/src/lib.rs @@ -3,18 +3,20 @@ //! This module contains the code for creating and emitting diagnostics. #![doc(html_root_url = "https://doc.rust-lang.org/nightly/nightly-rustc/")] +// tidy-alphabetical-start +#![allow(incomplete_features)] #![feature(array_windows)] +#![feature(box_patterns)] +#![feature(error_reporter)] #![feature(extract_if)] #![feature(if_let_guard)] #![feature(let_chains)] #![feature(never_type)] #![feature(result_option_inspect)] #![feature(rustc_attrs)] -#![feature(yeet_expr)] #![feature(try_blocks)] -#![feature(box_patterns)] -#![feature(error_reporter)] -#![allow(incomplete_features)] +#![feature(yeet_expr)] +// tidy-alphabetical-end #![cfg_attr(not(bootstrap), allow(internal_features))] #[macro_use] diff --git a/compiler/rustc_expand/src/lib.rs b/compiler/rustc_expand/src/lib.rs index c4a9b2ace9a02..c20765c392312 100644 --- a/compiler/rustc_expand/src/lib.rs +++ b/compiler/rustc_expand/src/lib.rs @@ -1,3 +1,5 @@ +// tidy-alphabetical-start +#![deny(rustc::untranslatable_diagnostic)] #![feature(array_windows)] #![feature(associated_type_bounds)] #![feature(associated_type_defaults)] @@ -9,8 +11,8 @@ #![feature(proc_macro_span)] #![feature(rustc_attrs)] #![feature(try_blocks)] +// tidy-alphabetical-end #![recursion_limit = "256"] -#![deny(rustc::untranslatable_diagnostic)] #![cfg_attr(not(bootstrap), allow(internal_features))] #[macro_use] diff --git a/compiler/rustc_feature/src/lib.rs b/compiler/rustc_feature/src/lib.rs index 69e33115922ab..c2f31045d4253 100644 --- a/compiler/rustc_feature/src/lib.rs +++ b/compiler/rustc_feature/src/lib.rs @@ -10,10 +10,11 @@ //! For the purpose of future feature-tracking, once a feature gate is added, //! even if it is stabilized or removed, *do not remove it*. Instead, move the //! symbol to the `accepted` or `removed` modules respectively. - -#![feature(lazy_cell)] -#![deny(rustc::untranslatable_diagnostic)] +// tidy-alphabetical-start #![deny(rustc::diagnostic_outside_of_impl)] +#![deny(rustc::untranslatable_diagnostic)] +#![feature(lazy_cell)] +// tidy-alphabetical-end mod accepted; mod active; diff --git a/compiler/rustc_fluent_macro/src/lib.rs b/compiler/rustc_fluent_macro/src/lib.rs index a01643cd67d2b..0d388b7cb1d83 100644 --- a/compiler/rustc_fluent_macro/src/lib.rs +++ b/compiler/rustc_fluent_macro/src/lib.rs @@ -1,9 +1,11 @@ #![doc(html_root_url = "https://doc.rust-lang.org/nightly/nightly-rustc/")] +// tidy-alphabetical-start +#![allow(rustc::default_hash_types)] +#![deny(rustc::diagnostic_outside_of_impl)] +#![deny(rustc::untranslatable_diagnostic)] #![feature(proc_macro_diagnostic)] #![feature(proc_macro_span)] -#![deny(rustc::untranslatable_diagnostic)] -#![deny(rustc::diagnostic_outside_of_impl)] -#![allow(rustc::default_hash_types)] +// tidy-alphabetical-end use proc_macro::TokenStream; diff --git a/compiler/rustc_fs_util/src/lib.rs b/compiler/rustc_fs_util/src/lib.rs index 81d6333814544..721f06b419659 100644 --- a/compiler/rustc_fs_util/src/lib.rs +++ b/compiler/rustc_fs_util/src/lib.rs @@ -1,6 +1,8 @@ -#![feature(absolute_path)] -#![deny(rustc::untranslatable_diagnostic)] +// tidy-alphabetical-start #![deny(rustc::diagnostic_outside_of_impl)] +#![deny(rustc::untranslatable_diagnostic)] +#![feature(absolute_path)] +// tidy-alphabetical-end use std::ffi::CString; use std::fs; diff --git a/compiler/rustc_graphviz/src/lib.rs b/compiler/rustc_graphviz/src/lib.rs index 5d86d89581755..55c78188e7453 100644 --- a/compiler/rustc_graphviz/src/lib.rs +++ b/compiler/rustc_graphviz/src/lib.rs @@ -273,8 +273,10 @@ html_root_url = "https://doc.rust-lang.org/nightly/nightly-rustc/", test(attr(allow(unused_variables), deny(warnings))) )] -#![deny(rustc::untranslatable_diagnostic)] +// tidy-alphabetical-start #![deny(rustc::diagnostic_outside_of_impl)] +#![deny(rustc::untranslatable_diagnostic)] +// tidy-alphabetical-end use LabelText::*; diff --git a/compiler/rustc_hir/src/lib.rs b/compiler/rustc_hir/src/lib.rs index 34214931a081d..600aa2005a2b7 100644 --- a/compiler/rustc_hir/src/lib.rs +++ b/compiler/rustc_hir/src/lib.rs @@ -2,6 +2,9 @@ //! //! [rustc dev guide]: https://rustc-dev-guide.rust-lang.org/hir.html +// tidy-alphabetical-start +#![deny(rustc::diagnostic_outside_of_impl)] +#![deny(rustc::untranslatable_diagnostic)] #![feature(associated_type_defaults)] #![feature(closure_track_caller)] #![feature(const_btree_len)] @@ -10,9 +13,8 @@ #![feature(never_type)] #![feature(rustc_attrs)] #![feature(variant_count)] +// tidy-alphabetical-end #![recursion_limit = "256"] -#![deny(rustc::untranslatable_diagnostic)] -#![deny(rustc::diagnostic_outside_of_impl)] #![cfg_attr(not(bootstrap), allow(internal_features))] #[macro_use] diff --git a/compiler/rustc_hir_analysis/src/lib.rs b/compiler/rustc_hir_analysis/src/lib.rs index 4f95174f869e7..b73ba90328005 100644 --- a/compiler/rustc_hir_analysis/src/lib.rs +++ b/compiler/rustc_hir_analysis/src/lib.rs @@ -55,20 +55,22 @@ This API is completely unstable and subject to change. */ -#![allow(rustc::potential_query_instability)] #![doc(html_root_url = "https://doc.rust-lang.org/nightly/nightly-rustc/")] +// tidy-alphabetical-start +#![allow(rustc::potential_query_instability)] #![feature(box_patterns)] #![feature(control_flow_enum)] #![feature(if_let_guard)] #![feature(is_sorted)] #![feature(iter_intersperse)] +#![feature(lazy_cell)] #![feature(let_chains)] #![feature(min_specialization)] #![feature(never_type)] -#![feature(lazy_cell)] #![feature(slice_partition_dedup)] #![feature(try_blocks)] #![feature(type_alias_impl_trait)] +// tidy-alphabetical-end #![recursion_limit = "256"] #[macro_use] diff --git a/compiler/rustc_hir_typeck/src/lib.rs b/compiler/rustc_hir_typeck/src/lib.rs index c4d3cbc9faab0..459f3bfc6655e 100644 --- a/compiler/rustc_hir_typeck/src/lib.rs +++ b/compiler/rustc_hir_typeck/src/lib.rs @@ -1,11 +1,13 @@ +// tidy-alphabetical-start +#![feature(box_patterns)] +#![feature(control_flow_enum)] #![feature(if_let_guard)] #![feature(let_chains)] -#![feature(try_blocks)] -#![feature(never_type)] -#![feature(box_patterns)] #![feature(min_specialization)] -#![feature(control_flow_enum)] +#![feature(never_type)] #![feature(option_as_slice)] +#![feature(try_blocks)] +// tidy-alphabetical-end #![recursion_limit = "256"] #[macro_use] diff --git a/compiler/rustc_incremental/src/lib.rs b/compiler/rustc_incremental/src/lib.rs index b9171fad55ba3..fec5b058ed452 100644 --- a/compiler/rustc_incremental/src/lib.rs +++ b/compiler/rustc_incremental/src/lib.rs @@ -1,11 +1,13 @@ //! Support for serializing the dep-graph and reloading it. -#![deny(missing_docs)] #![doc(html_root_url = "https://doc.rust-lang.org/nightly/nightly-rustc/")] +// tidy-alphabetical-start +#![deny(missing_docs)] +#![deny(rustc::diagnostic_outside_of_impl)] +#![deny(rustc::untranslatable_diagnostic)] #![feature(never_type)] +// tidy-alphabetical-end #![recursion_limit = "256"] -#![deny(rustc::untranslatable_diagnostic)] -#![deny(rustc::diagnostic_outside_of_impl)] #[macro_use] extern crate rustc_middle; diff --git a/compiler/rustc_infer/src/lib.rs b/compiler/rustc_infer/src/lib.rs index e92ba05aa6739..dd76f880feba6 100644 --- a/compiler/rustc_infer/src/lib.rs +++ b/compiler/rustc_infer/src/lib.rs @@ -13,15 +13,17 @@ //! This API is completely unstable and subject to change. #![doc(html_root_url = "https://doc.rust-lang.org/nightly/nightly-rustc/")] +// tidy-alphabetical-start #![feature(associated_type_bounds)] #![feature(box_patterns)] #![feature(control_flow_enum)] #![feature(extend_one)] -#![feature(let_chains)] #![feature(if_let_guard)] +#![feature(let_chains)] #![feature(min_specialization)] #![feature(never_type)] #![feature(try_blocks)] +// tidy-alphabetical-end #![recursion_limit = "512"] // For rustdoc #[macro_use] diff --git a/compiler/rustc_interface/src/lib.rs b/compiler/rustc_interface/src/lib.rs index 51bd8381e93d7..fce9025fa1c18 100644 --- a/compiler/rustc_interface/src/lib.rs +++ b/compiler/rustc_interface/src/lib.rs @@ -1,13 +1,15 @@ +// tidy-alphabetical-start +#![allow(rustc::potential_query_instability)] +#![deny(rustc::diagnostic_outside_of_impl)] +#![deny(rustc::untranslatable_diagnostic)] #![feature(box_patterns)] #![feature(decl_macro)] #![feature(internal_output_capture)] -#![feature(thread_spawn_unchecked)] #![feature(lazy_cell)] +#![feature(thread_spawn_unchecked)] #![feature(try_blocks)] +// tidy-alphabetical-end #![recursion_limit = "256"] -#![allow(rustc::potential_query_instability)] -#![deny(rustc::untranslatable_diagnostic)] -#![deny(rustc::diagnostic_outside_of_impl)] #[macro_use] extern crate tracing; diff --git a/compiler/rustc_lexer/src/lib.rs b/compiler/rustc_lexer/src/lib.rs index 43dfd34a6ff74..f2f332fe7d400 100644 --- a/compiler/rustc_lexer/src/lib.rs +++ b/compiler/rustc_lexer/src/lib.rs @@ -18,8 +18,10 @@ //! lexeme types. //! //! [`rustc_parse::lexer`]: ../rustc_parse/lexer/index.html -#![deny(rustc::untranslatable_diagnostic)] +// tidy-alphabetical-start #![deny(rustc::diagnostic_outside_of_impl)] +#![deny(rustc::untranslatable_diagnostic)] +// tidy-alphabetical-end // We want to be able to build this crate with a stable compiler, so no // `#![feature]` attributes should be added. diff --git a/compiler/rustc_lint/src/lib.rs b/compiler/rustc_lint/src/lib.rs index 42378951af36a..54e631233351c 100644 --- a/compiler/rustc_lint/src/lib.rs +++ b/compiler/rustc_lint/src/lib.rs @@ -25,8 +25,11 @@ //! //! This API is completely unstable and subject to change. -#![allow(rustc::potential_query_instability)] #![doc(html_root_url = "https://doc.rust-lang.org/nightly/nightly-rustc/")] +// tidy-alphabetical-start +#![allow(rustc::potential_query_instability)] +#![deny(rustc::diagnostic_outside_of_impl)] +#![deny(rustc::untranslatable_diagnostic)] #![feature(array_windows)] #![feature(box_patterns)] #![feature(control_flow_enum)] @@ -37,9 +40,8 @@ #![feature(min_specialization)] #![feature(never_type)] #![feature(rustc_attrs)] +// tidy-alphabetical-end #![recursion_limit = "256"] -#![deny(rustc::untranslatable_diagnostic)] -#![deny(rustc::diagnostic_outside_of_impl)] #![cfg_attr(not(bootstrap), allow(internal_features))] #[macro_use] diff --git a/compiler/rustc_lint_defs/src/lib.rs b/compiler/rustc_lint_defs/src/lib.rs index f350957f72f1c..aa1e89fe12f41 100644 --- a/compiler/rustc_lint_defs/src/lib.rs +++ b/compiler/rustc_lint_defs/src/lib.rs @@ -1,6 +1,8 @@ -#![feature(min_specialization)] -#![deny(rustc::untranslatable_diagnostic)] +// tidy-alphabetical-start #![deny(rustc::diagnostic_outside_of_impl)] +#![deny(rustc::untranslatable_diagnostic)] +#![feature(min_specialization)] +// tidy-alphabetical-end #[macro_use] extern crate rustc_macros; diff --git a/compiler/rustc_macros/src/lib.rs b/compiler/rustc_macros/src/lib.rs index f4593d0fe736d..164092468a946 100644 --- a/compiler/rustc_macros/src/lib.rs +++ b/compiler/rustc_macros/src/lib.rs @@ -1,12 +1,14 @@ +// tidy-alphabetical-start +#![allow(rustc::default_hash_types)] +#![deny(rustc::diagnostic_outside_of_impl)] +#![deny(rustc::untranslatable_diagnostic)] #![feature(allow_internal_unstable)] #![feature(if_let_guard)] #![feature(let_chains)] #![feature(never_type)] #![feature(proc_macro_diagnostic)] #![feature(proc_macro_span)] -#![allow(rustc::default_hash_types)] -#![deny(rustc::untranslatable_diagnostic)] -#![deny(rustc::diagnostic_outside_of_impl)] +// tidy-alphabetical-end #![cfg_attr(not(bootstrap), allow(internal_features))] #![recursion_limit = "128"] diff --git a/compiler/rustc_metadata/src/lib.rs b/compiler/rustc_metadata/src/lib.rs index 87373d9974357..0c18200f76de2 100644 --- a/compiler/rustc_metadata/src/lib.rs +++ b/compiler/rustc_metadata/src/lib.rs @@ -1,20 +1,22 @@ #![doc(html_root_url = "https://doc.rust-lang.org/nightly/nightly-rustc/")] +// tidy-alphabetical-start +#![allow(rustc::potential_query_instability)] +#![deny(rustc::diagnostic_outside_of_impl)] +#![deny(rustc::untranslatable_diagnostic)] #![feature(decl_macro)] #![feature(extract_if)] #![feature(generators)] #![feature(iter_from_generator)] #![feature(let_chains)] -#![feature(proc_macro_internals)] #![feature(macro_metavar_expr)] #![feature(min_specialization)] +#![feature(never_type)] +#![feature(proc_macro_internals)] #![feature(slice_as_chunks)] #![feature(trusted_len)] #![feature(try_blocks)] -#![feature(never_type)] +// tidy-alphabetical-end #![recursion_limit = "256"] -#![allow(rustc::potential_query_instability)] -#![deny(rustc::untranslatable_diagnostic)] -#![deny(rustc::diagnostic_outside_of_impl)] extern crate proc_macro; diff --git a/compiler/rustc_middle/src/lib.rs b/compiler/rustc_middle/src/lib.rs index f5576b59571f5..9546bba6e7713 100644 --- a/compiler/rustc_middle/src/lib.rs +++ b/compiler/rustc_middle/src/lib.rs @@ -23,45 +23,47 @@ //! This API is completely unstable and subject to change. #![doc(html_root_url = "https://doc.rust-lang.org/nightly/nightly-rustc/")] +// tidy-alphabetical-start #![feature(allocator_api)] #![feature(array_windows)] #![feature(assert_matches)] +#![feature(associated_type_bounds)] #![feature(box_patterns)] +#![feature(const_option)] +#![feature(control_flow_enum)] #![feature(core_intrinsics)] +#![feature(decl_macro)] #![feature(discriminant_kind)] #![feature(exhaustive_patterns)] +#![feature(extern_types)] +#![feature(extract_if)] #![feature(generators)] #![feature(get_mut_unchecked)] #![feature(if_let_guard)] #![feature(inline_const)] +#![feature(intra_doc_pointers)] #![feature(iter_from_generator)] +#![feature(let_chains)] #![feature(local_key_cell_methods)] +#![feature(macro_metavar_expr)] +#![feature(min_specialization)] #![feature(negative_impls)] #![feature(never_type)] -#![feature(extern_types)] #![feature(new_uninit)] -#![feature(let_chains)] -#![feature(min_specialization)] -#![feature(trusted_len)] -#![feature(type_alias_impl_trait)] -#![feature(strict_provenance)] -#![feature(associated_type_bounds)] +#![feature(nonzero_ops)] +#![feature(ptr_alignment_type)] +#![feature(result_option_inspect)] #![feature(rustc_attrs)] -#![feature(control_flow_enum)] +#![feature(strict_provenance)] +#![feature(trait_alias)] #![feature(trait_upcasting)] +#![feature(trusted_len)] #![feature(trusted_step)] #![feature(try_blocks)] #![feature(try_reserve_kind)] -#![feature(nonzero_ops)] -#![feature(decl_macro)] -#![feature(extract_if)] -#![feature(intra_doc_pointers)] +#![feature(type_alias_impl_trait)] #![feature(yeet_expr)] -#![feature(result_option_inspect)] -#![feature(const_option)] -#![feature(trait_alias)] -#![feature(ptr_alignment_type)] -#![feature(macro_metavar_expr)] +// tidy-alphabetical-end #![recursion_limit = "512"] #![allow(rustc::potential_query_instability)] #![cfg_attr(not(bootstrap), allow(internal_features))] diff --git a/compiler/rustc_mir_build/src/lib.rs b/compiler/rustc_mir_build/src/lib.rs index 099fefbf06871..6f24e9ddc6331 100644 --- a/compiler/rustc_mir_build/src/lib.rs +++ b/compiler/rustc_mir_build/src/lib.rs @@ -1,6 +1,7 @@ //! Construction of MIR from HIR. //! //! This crate also contains the match exhaustiveness and usefulness checking. +// tidy-alphabetical-start #![allow(rustc::potential_query_instability)] #![feature(assert_matches)] #![feature(associated_type_bounds)] @@ -9,6 +10,7 @@ #![feature(let_chains)] #![feature(min_specialization)] #![feature(try_blocks)] +// tidy-alphabetical-end #![recursion_limit = "256"] #[macro_use] diff --git a/compiler/rustc_mir_dataflow/src/lib.rs b/compiler/rustc_mir_dataflow/src/lib.rs index 900d438f8d538..6b01d3f00c2f3 100644 --- a/compiler/rustc_mir_dataflow/src/lib.rs +++ b/compiler/rustc_mir_dataflow/src/lib.rs @@ -1,3 +1,6 @@ +// tidy-alphabetical-start +#![deny(rustc::diagnostic_outside_of_impl)] +#![deny(rustc::untranslatable_diagnostic)] #![feature(associated_type_defaults)] #![feature(box_patterns)] #![feature(exact_size_is_empty)] @@ -5,9 +8,8 @@ #![feature(min_specialization)] #![feature(stmt_expr_attributes)] #![feature(trusted_step)] +// tidy-alphabetical-end #![recursion_limit = "256"] -#![deny(rustc::untranslatable_diagnostic)] -#![deny(rustc::diagnostic_outside_of_impl)] #[macro_use] extern crate tracing; diff --git a/compiler/rustc_mir_transform/src/lib.rs b/compiler/rustc_mir_transform/src/lib.rs index bf798adee199e..e61c54eededf6 100644 --- a/compiler/rustc_mir_transform/src/lib.rs +++ b/compiler/rustc_mir_transform/src/lib.rs @@ -1,7 +1,9 @@ +// tidy-alphabetical-start #![allow(rustc::potential_query_instability)] -#![deny(rustc::untranslatable_diagnostic)] #![deny(rustc::diagnostic_outside_of_impl)] +#![deny(rustc::untranslatable_diagnostic)] #![feature(box_patterns)] +#![feature(if_let_guard)] #![feature(is_sorted)] #![feature(let_chains)] #![feature(map_try_insert)] @@ -11,7 +13,7 @@ #![feature(trusted_step)] #![feature(try_blocks)] #![feature(yeet_expr)] -#![feature(if_let_guard)] +// tidy-alphabetical-end #![recursion_limit = "256"] #[macro_use] diff --git a/compiler/rustc_monomorphize/src/lib.rs b/compiler/rustc_monomorphize/src/lib.rs index 5f05020acae91..e273312ae63cf 100644 --- a/compiler/rustc_monomorphize/src/lib.rs +++ b/compiler/rustc_monomorphize/src/lib.rs @@ -1,9 +1,11 @@ +// tidy-alphabetical-start +#![allow(rustc::potential_query_instability)] +#![deny(rustc::diagnostic_outside_of_impl)] +#![deny(rustc::untranslatable_diagnostic)] #![feature(array_windows)] #![feature(is_sorted)] +// tidy-alphabetical-end #![recursion_limit = "256"] -#![allow(rustc::potential_query_instability)] -#![deny(rustc::untranslatable_diagnostic)] -#![deny(rustc::diagnostic_outside_of_impl)] #[macro_use] extern crate tracing; diff --git a/compiler/rustc_parse/src/lib.rs b/compiler/rustc_parse/src/lib.rs index 892be36aae770..1b64833c739b0 100644 --- a/compiler/rustc_parse/src/lib.rs +++ b/compiler/rustc_parse/src/lib.rs @@ -1,5 +1,6 @@ //! The main parser interface. +// tidy-alphabetical-start #![feature(array_windows)] #![feature(box_patterns)] #![feature(if_let_guard)] @@ -7,6 +8,7 @@ #![feature(let_chains)] #![feature(never_type)] #![feature(rustc_attrs)] +// tidy-alphabetical-end #![recursion_limit = "256"] #![cfg_attr(not(bootstrap), allow(internal_features))] diff --git a/compiler/rustc_parse_format/src/lib.rs b/compiler/rustc_parse_format/src/lib.rs index 88452ccdf052e..3b113e7bfaa98 100644 --- a/compiler/rustc_parse_format/src/lib.rs +++ b/compiler/rustc_parse_format/src/lib.rs @@ -9,8 +9,10 @@ html_playground_url = "https://play.rust-lang.org/", test(attr(deny(warnings))) )] -#![deny(rustc::untranslatable_diagnostic)] +// tidy-alphabetical-start #![deny(rustc::diagnostic_outside_of_impl)] +#![deny(rustc::untranslatable_diagnostic)] +// tidy-alphabetical-end // We want to be able to build this crate with a stable compiler, so no // `#![feature]` attributes should be added. diff --git a/compiler/rustc_passes/src/lib.rs b/compiler/rustc_passes/src/lib.rs index 0da4b29464862..f11880957b6f2 100644 --- a/compiler/rustc_passes/src/lib.rs +++ b/compiler/rustc_passes/src/lib.rs @@ -4,16 +4,18 @@ //! //! This API is completely unstable and subject to change. -#![allow(rustc::potential_query_instability)] #![doc(html_root_url = "https://doc.rust-lang.org/nightly/nightly-rustc/")] +// tidy-alphabetical-start +#![allow(rustc::potential_query_instability)] +#![deny(rustc::diagnostic_outside_of_impl)] +#![deny(rustc::untranslatable_diagnostic)] #![feature(iter_intersperse)] #![feature(let_chains)] #![feature(map_try_insert)] #![feature(min_specialization)] #![feature(try_blocks)] +// tidy-alphabetical-end #![recursion_limit = "256"] -#![deny(rustc::untranslatable_diagnostic)] -#![deny(rustc::diagnostic_outside_of_impl)] #[macro_use] extern crate rustc_middle; diff --git a/compiler/rustc_privacy/src/lib.rs b/compiler/rustc_privacy/src/lib.rs index 30a4235d37145..7f550c6413f45 100644 --- a/compiler/rustc_privacy/src/lib.rs +++ b/compiler/rustc_privacy/src/lib.rs @@ -1,11 +1,13 @@ #![doc(html_root_url = "https://doc.rust-lang.org/nightly/nightly-rustc/")] +// tidy-alphabetical-start +#![deny(rustc::diagnostic_outside_of_impl)] +#![deny(rustc::untranslatable_diagnostic)] #![feature(associated_type_defaults)] +#![feature(let_chains)] #![feature(rustc_private)] #![feature(try_blocks)] -#![feature(let_chains)] +// tidy-alphabetical-end #![recursion_limit = "256"] -#![deny(rustc::untranslatable_diagnostic)] -#![deny(rustc::diagnostic_outside_of_impl)] #[macro_use] extern crate tracing; diff --git a/compiler/rustc_query_impl/src/lib.rs b/compiler/rustc_query_impl/src/lib.rs index 53005ede84378..add3cc1cf124a 100644 --- a/compiler/rustc_query_impl/src/lib.rs +++ b/compiler/rustc_query_impl/src/lib.rs @@ -3,14 +3,17 @@ #![doc(html_root_url = "https://doc.rust-lang.org/nightly/nightly-rustc/")] // this shouldn't be necessary, but the check for `&mut _` is too naive and denies returning a function pointer that takes a mut ref #![feature(const_mut_refs)] +// tidy-alphabetical-start +#![allow(rustc::potential_query_instability)] +#![allow(unused_parens)] +#![deny(rustc::diagnostic_outside_of_impl)] +#![deny(rustc::untranslatable_diagnostic)] #![feature(const_refs_to_cell)] #![feature(min_specialization)] #![feature(never_type)] #![feature(rustc_attrs)] +// tidy-alphabetical-end #![recursion_limit = "256"] -#![allow(rustc::potential_query_instability, unused_parens)] -#![deny(rustc::untranslatable_diagnostic)] -#![deny(rustc::diagnostic_outside_of_impl)] #![cfg_attr(not(bootstrap), allow(internal_features))] #[macro_use] diff --git a/compiler/rustc_query_system/src/lib.rs b/compiler/rustc_query_system/src/lib.rs index 8c9e9cfad6024..82d8be5922f8f 100644 --- a/compiler/rustc_query_system/src/lib.rs +++ b/compiler/rustc_query_system/src/lib.rs @@ -1,12 +1,14 @@ +// tidy-alphabetical-start +#![allow(rustc::potential_query_instability)] +#![deny(rustc::diagnostic_outside_of_impl)] +#![deny(rustc::untranslatable_diagnostic)] #![feature(assert_matches)] #![feature(core_intrinsics)] -#![feature(hash_raw_entry)] -#![feature(min_specialization)] #![feature(extern_types)] +#![feature(hash_raw_entry)] #![feature(let_chains)] -#![allow(rustc::potential_query_instability)] -#![deny(rustc::untranslatable_diagnostic)] -#![deny(rustc::diagnostic_outside_of_impl)] +#![feature(min_specialization)] +// tidy-alphabetical-end #[macro_use] extern crate tracing; diff --git a/compiler/rustc_resolve/src/lib.rs b/compiler/rustc_resolve/src/lib.rs index e403386e60c25..52d9b959a9b7d 100644 --- a/compiler/rustc_resolve/src/lib.rs +++ b/compiler/rustc_resolve/src/lib.rs @@ -7,6 +7,9 @@ //! Type-relative name resolution (methods, fields, associated items) happens in `rustc_hir_analysis`. #![doc(html_root_url = "https://doc.rust-lang.org/nightly/nightly-rustc/")] +// tidy-alphabetical-start +#![allow(rustc::potential_query_instability)] +#![allow(rustdoc::private_intra_doc_links)] #![feature(assert_matches)] #![feature(box_patterns)] #![feature(extract_if)] @@ -15,9 +18,8 @@ #![feature(let_chains)] #![feature(never_type)] #![feature(rustc_attrs)] +// tidy-alphabetical-end #![recursion_limit = "256"] -#![allow(rustdoc::private_intra_doc_links)] -#![allow(rustc::potential_query_instability)] #![cfg_attr(not(bootstrap), allow(internal_features))] #[macro_use] diff --git a/compiler/rustc_serialize/src/lib.rs b/compiler/rustc_serialize/src/lib.rs index ce8503918b4f2..d7975e8eb87f3 100644 --- a/compiler/rustc_serialize/src/lib.rs +++ b/compiler/rustc_serialize/src/lib.rs @@ -9,18 +9,20 @@ Core encoding and decoding interfaces. html_playground_url = "https://play.rust-lang.org/", test(attr(allow(unused_variables), deny(warnings))) )] -#![feature(never_type)] +// tidy-alphabetical-start +#![allow(rustc::internal)] +#![deny(rustc::diagnostic_outside_of_impl)] +#![deny(rustc::untranslatable_diagnostic)] +#![feature(allocator_api)] #![feature(associated_type_bounds)] -#![feature(min_specialization)] #![feature(core_intrinsics)] #![feature(maybe_uninit_slice)] +#![feature(min_specialization)] +#![feature(never_type)] #![feature(new_uninit)] -#![feature(allocator_api)] #![feature(ptr_sub_ptr)] +// tidy-alphabetical-end #![cfg_attr(test, feature(test))] -#![allow(rustc::internal)] -#![deny(rustc::untranslatable_diagnostic)] -#![deny(rustc::diagnostic_outside_of_impl)] pub use self::serialize::{Decodable, Decoder, Encodable, Encoder}; diff --git a/compiler/rustc_session/src/lib.rs b/compiler/rustc_session/src/lib.rs index a270817f3109b..221b701fb304b 100644 --- a/compiler/rustc_session/src/lib.rs +++ b/compiler/rustc_session/src/lib.rs @@ -1,15 +1,17 @@ +// tidy-alphabetical-start +#![allow(rustc::potential_query_instability)] +#![deny(rustc::diagnostic_outside_of_impl)] +#![deny(rustc::untranslatable_diagnostic)] #![feature(if_let_guard)] +#![feature(lazy_cell)] #![feature(let_chains)] +#![feature(map_many_mut)] #![feature(min_specialization)] #![feature(never_type)] -#![feature(lazy_cell)] #![feature(option_get_or_insert_default)] #![feature(rustc_attrs)] -#![feature(map_many_mut)] +// tidy-alphabetical-end #![recursion_limit = "256"] -#![allow(rustc::potential_query_instability)] -#![deny(rustc::untranslatable_diagnostic)] -#![deny(rustc::diagnostic_outside_of_impl)] #![cfg_attr(not(bootstrap), allow(internal_features))] #[macro_use] diff --git a/compiler/rustc_smir/src/lib.rs b/compiler/rustc_smir/src/lib.rs index 6ebba56c76d2a..daace1aef9a56 100644 --- a/compiler/rustc_smir/src/lib.rs +++ b/compiler/rustc_smir/src/lib.rs @@ -11,10 +11,12 @@ test(attr(allow(unused_variables), deny(warnings))) )] #![cfg_attr(not(feature = "default"), feature(rustc_private))] +// tidy-alphabetical-start +#![feature(intra_doc_pointers)] #![feature(local_key_cell_methods)] #![feature(ptr_metadata)] -#![feature(type_alias_impl_trait)] // Used to define opaque types. -#![feature(intra_doc_pointers)] +#![feature(type_alias_impl_trait)] +// tidy-alphabetical-end // Declare extern rustc_* crates to enable building this crate separately from the compiler. #[cfg(not(feature = "default"))] diff --git a/compiler/rustc_span/src/lib.rs b/compiler/rustc_span/src/lib.rs index afee5c0fe2b4f..db59e4dcc0eb1 100644 --- a/compiler/rustc_span/src/lib.rs +++ b/compiler/rustc_span/src/lib.rs @@ -14,15 +14,17 @@ //! This API is completely unstable and subject to change. #![doc(html_root_url = "https://doc.rust-lang.org/nightly/nightly-rustc/")] +// tidy-alphabetical-start +#![deny(rustc::diagnostic_outside_of_impl)] +#![deny(rustc::untranslatable_diagnostic)] #![feature(array_windows)] #![feature(if_let_guard)] -#![feature(negative_impls)] -#![feature(min_specialization)] -#![feature(rustc_attrs)] #![feature(let_chains)] +#![feature(min_specialization)] +#![feature(negative_impls)] #![feature(round_char_boundary)] -#![deny(rustc::untranslatable_diagnostic)] -#![deny(rustc::diagnostic_outside_of_impl)] +#![feature(rustc_attrs)] +// tidy-alphabetical-end #![cfg_attr(not(bootstrap), allow(internal_features))] #[macro_use] diff --git a/compiler/rustc_symbol_mangling/src/lib.rs b/compiler/rustc_symbol_mangling/src/lib.rs index 74538e9f5a3fc..f0867d469c959 100644 --- a/compiler/rustc_symbol_mangling/src/lib.rs +++ b/compiler/rustc_symbol_mangling/src/lib.rs @@ -88,11 +88,13 @@ //! DefPaths which are much more robust in the face of changes to the code base. #![doc(html_root_url = "https://doc.rust-lang.org/nightly/nightly-rustc/")] -#![feature(never_type)] -#![recursion_limit = "256"] +// tidy-alphabetical-start #![allow(rustc::potential_query_instability)] -#![deny(rustc::untranslatable_diagnostic)] #![deny(rustc::diagnostic_outside_of_impl)] +#![deny(rustc::untranslatable_diagnostic)] +#![feature(never_type)] +// tidy-alphabetical-end +#![recursion_limit = "256"] #[macro_use] extern crate rustc_middle; diff --git a/compiler/rustc_target/src/lib.rs b/compiler/rustc_target/src/lib.rs index b52002b123968..95d300062d199 100644 --- a/compiler/rustc_target/src/lib.rs +++ b/compiler/rustc_target/src/lib.rs @@ -8,6 +8,9 @@ //! LLVM. #![doc(html_root_url = "https://doc.rust-lang.org/nightly/nightly-rustc/")] +// tidy-alphabetical-start +#![deny(rustc::diagnostic_outside_of_impl)] +#![deny(rustc::untranslatable_diagnostic)] #![feature(assert_matches)] #![feature(associated_type_bounds)] #![feature(exhaustive_patterns)] @@ -17,8 +20,7 @@ #![feature(never_type)] #![feature(rustc_attrs)] #![feature(step_trait)] -#![deny(rustc::untranslatable_diagnostic)] -#![deny(rustc::diagnostic_outside_of_impl)] +// tidy-alphabetical-end #![cfg_attr(not(bootstrap), allow(internal_features))] use std::path::{Path, PathBuf}; diff --git a/compiler/rustc_trait_selection/src/lib.rs b/compiler/rustc_trait_selection/src/lib.rs index 56d37d58de752..503e989de874d 100644 --- a/compiler/rustc_trait_selection/src/lib.rs +++ b/compiler/rustc_trait_selection/src/lib.rs @@ -11,16 +11,18 @@ //! This API is completely unstable and subject to change. #![doc(html_root_url = "https://doc.rust-lang.org/nightly/nightly-rustc/")] +// tidy-alphabetical-start #![feature(associated_type_bounds)] #![feature(box_patterns)] #![feature(control_flow_enum)] #![feature(extract_if)] -#![feature(let_chains)] #![feature(if_let_guard)] +#![feature(let_chains)] +#![feature(min_specialization)] #![feature(never_type)] #![feature(result_option_inspect)] #![feature(type_alias_impl_trait)] -#![feature(min_specialization)] +// tidy-alphabetical-end #![recursion_limit = "512"] // For rustdoc #[macro_use] diff --git a/compiler/rustc_traits/src/lib.rs b/compiler/rustc_traits/src/lib.rs index dfa5814219bc2..e9f7c6433293a 100644 --- a/compiler/rustc_traits/src/lib.rs +++ b/compiler/rustc_traits/src/lib.rs @@ -1,8 +1,9 @@ //! Queries that are independent from the main solver code. - -#![deny(rustc::untranslatable_diagnostic)] +// tidy-alphabetical-start #![deny(rustc::diagnostic_outside_of_impl)] +#![deny(rustc::untranslatable_diagnostic)] #![feature(let_chains)] +// tidy-alphabetical-end #![recursion_limit = "256"] #[macro_use] diff --git a/compiler/rustc_transmute/src/lib.rs b/compiler/rustc_transmute/src/lib.rs index 05ad4a4a12ab3..a696b55d58b3f 100644 --- a/compiler/rustc_transmute/src/lib.rs +++ b/compiler/rustc_transmute/src/lib.rs @@ -1,7 +1,12 @@ -#![feature(alloc_layout_extra, decl_macro, iterator_try_reduce, never_type)] +// tidy-alphabetical-start #![allow(dead_code, unused_variables)] -#![deny(rustc::untranslatable_diagnostic)] #![deny(rustc::diagnostic_outside_of_impl)] +#![deny(rustc::untranslatable_diagnostic)] +#![feature(alloc_layout_extra)] +#![feature(decl_macro)] +#![feature(iterator_try_reduce)] +#![feature(never_type)] +// tidy-alphabetical-end #[macro_use] extern crate tracing; diff --git a/compiler/rustc_ty_utils/src/lib.rs b/compiler/rustc_ty_utils/src/lib.rs index 147b600f7ba52..5052b775d54b2 100644 --- a/compiler/rustc_ty_utils/src/lib.rs +++ b/compiler/rustc_ty_utils/src/lib.rs @@ -5,15 +5,17 @@ //! This API is completely unstable and subject to change. #![doc(html_root_url = "https://doc.rust-lang.org/nightly/nightly-rustc/")] +// tidy-alphabetical-start +#![deny(rustc::diagnostic_outside_of_impl)] +#![deny(rustc::untranslatable_diagnostic)] #![feature(assert_matches)] +#![feature(box_patterns)] +#![feature(if_let_guard)] #![feature(iterator_try_collect)] #![feature(let_chains)] -#![feature(if_let_guard)] #![feature(never_type)] -#![feature(box_patterns)] +// tidy-alphabetical-end #![recursion_limit = "256"] -#![deny(rustc::untranslatable_diagnostic)] -#![deny(rustc::diagnostic_outside_of_impl)] #[macro_use] extern crate rustc_middle; diff --git a/compiler/rustc_type_ir/src/lib.rs b/compiler/rustc_type_ir/src/lib.rs index b0f8ea7a05da5..8c96f10ea7d83 100644 --- a/compiler/rustc_type_ir/src/lib.rs +++ b/compiler/rustc_type_ir/src/lib.rs @@ -1,11 +1,13 @@ +// tidy-alphabetical-start +#![deny(rustc::diagnostic_outside_of_impl)] +#![deny(rustc::untranslatable_diagnostic)] #![feature(associated_type_defaults)] #![feature(fmt_helpers_for_derive)] #![feature(min_specialization)] #![feature(never_type)] #![feature(rustc_attrs)] #![feature(unwrap_infallible)] -#![deny(rustc::untranslatable_diagnostic)] -#![deny(rustc::diagnostic_outside_of_impl)] +// tidy-alphabetical-end #![cfg_attr(not(bootstrap), allow(internal_features))] #[macro_use] diff --git a/library/alloc/benches/lib.rs b/library/alloc/benches/lib.rs index 638f343fb244b..5d3af2ecc1389 100644 --- a/library/alloc/benches/lib.rs +++ b/library/alloc/benches/lib.rs @@ -1,12 +1,14 @@ // Disabling on android for the time being // See https://github.com/rust-lang/rust/issues/73535#event-3477699747 #![cfg(not(target_os = "android"))] +// tidy-alphabetical-start #![feature(btree_extract_if)] #![feature(iter_next_chunk)] #![feature(repr_simd)] #![feature(slice_partition_dedup)] #![feature(strict_provenance)] #![feature(test)] +// tidy-alphabetical-end #![deny(fuzzy_provenance_casts)] extern crate test; diff --git a/library/alloc/tests/lib.rs b/library/alloc/tests/lib.rs index aa7a331b368be..d9665bc456572 100644 --- a/library/alloc/tests/lib.rs +++ b/library/alloc/tests/lib.rs @@ -1,47 +1,49 @@ -#![feature(allocator_api)] +// tidy-alphabetical-start +#![deny(fuzzy_provenance_casts)] +#![deny(unsafe_op_in_unsafe_fn)] #![feature(alloc_layout_extra)] +#![feature(allocator_api)] #![feature(assert_matches)] +#![feature(associated_type_bounds)] +#![feature(binary_heap_as_slice)] +#![feature(binary_heap_drain_sorted)] +#![feature(binary_heap_into_iter_sorted)] #![feature(btree_extract_if)] -#![feature(cow_is_borrowed)] +#![feature(const_btree_len)] #![feature(const_cow_is_borrowed)] #![feature(const_heap)] #![feature(const_mut_refs)] -#![feature(const_slice_from_raw_parts_mut)] #![feature(const_ptr_write)] +#![feature(const_slice_from_raw_parts_mut)] +#![feature(const_str_from_utf8)] +#![feature(const_trait_impl)] #![feature(const_try)] #![feature(core_intrinsics)] -#![feature(extract_if)] +#![feature(cow_is_borrowed)] +#![feature(drain_keep_rest)] #![feature(exact_size_is_empty)] +#![feature(extract_if)] +#![feature(inplace_iteration)] +#![feature(iter_advance_by)] +#![feature(iter_next_chunk)] #![feature(linked_list_cursors)] #![feature(map_try_insert)] #![feature(new_uninit)] +#![feature(panic_update_hook)] #![feature(pattern)] -#![feature(trusted_len)] -#![feature(try_reserve_kind)] -#![feature(unboxed_closures)] -#![feature(associated_type_bounds)] -#![feature(binary_heap_into_iter_sorted)] -#![feature(binary_heap_drain_sorted)] -#![feature(slice_ptr_get)] -#![feature(binary_heap_as_slice)] -#![feature(inplace_iteration)] -#![feature(iter_advance_by)] -#![feature(iter_next_chunk)] +#![feature(pointer_is_aligned)] #![feature(round_char_boundary)] +#![feature(slice_flatten)] #![feature(slice_group_by)] #![feature(slice_partition_dedup)] +#![feature(slice_ptr_get)] +#![feature(strict_provenance)] #![feature(string_remove_matches)] -#![feature(const_btree_len)] -#![feature(const_trait_impl)] -#![feature(const_str_from_utf8)] -#![feature(panic_update_hook)] -#![feature(pointer_is_aligned)] -#![feature(slice_flatten)] #![feature(thin_box)] -#![feature(strict_provenance)] -#![feature(drain_keep_rest)] -#![deny(fuzzy_provenance_casts)] -#![deny(unsafe_op_in_unsafe_fn)] +#![feature(trusted_len)] +#![feature(try_reserve_kind)] +#![feature(unboxed_closures)] +// tidy-alphabetical-end use std::collections::hash_map::DefaultHasher; use std::hash::{Hash, Hasher}; diff --git a/library/core/benches/lib.rs b/library/core/benches/lib.rs index 74ef0949b8af2..1a43f22028319 100644 --- a/library/core/benches/lib.rs +++ b/library/core/benches/lib.rs @@ -1,10 +1,12 @@ // wasm32 does not support benches (no time). #![cfg(not(target_arch = "wasm32"))] +// tidy-alphabetical-start #![feature(flt2dec)] -#![feature(test)] -#![feature(trusted_random_access)] #![feature(iter_array_chunks)] #![feature(iter_next_chunk)] +#![feature(test)] +#![feature(trusted_random_access)] +// tidy-alphabetical-end extern crate test; diff --git a/library/core/tests/lib.rs b/library/core/tests/lib.rs index 897a5e9b87063..1f403e3e437f4 100644 --- a/library/core/tests/lib.rs +++ b/library/core/tests/lib.rs @@ -1,117 +1,119 @@ +// tidy-alphabetical-start +#![deny(fuzzy_provenance_casts)] +#![deny(unsafe_op_in_unsafe_fn)] #![feature(alloc_layout_extra)] #![feature(array_chunks)] #![feature(array_methods)] +#![feature(array_try_from_fn)] #![feature(array_windows)] #![feature(bigint_helper_methods)] #![feature(cell_update)] +#![feature(const_align_of_val_raw)] #![feature(const_align_offset)] +#![feature(const_array_from_ref)] #![feature(const_assume)] -#![feature(const_align_of_val_raw)] #![feature(const_black_box)] #![feature(const_caller_location)] #![feature(const_cell_into_inner)] #![feature(const_hash)] #![feature(const_heap)] +#![feature(const_ip)] +#![feature(const_ipv4)] +#![feature(const_ipv6)] +#![feature(const_likely)] +#![feature(const_location_fields)] #![feature(const_maybe_uninit_as_mut_ptr)] #![feature(const_maybe_uninit_assume_init_read)] +#![feature(const_mut_refs)] #![feature(const_nonnull_new)] +#![feature(const_option)] +#![feature(const_option_ext)] +#![feature(const_pin)] #![feature(const_pointer_byte_offsets)] #![feature(const_pointer_is_aligned)] #![feature(const_ptr_as_ref)] #![feature(const_ptr_write)] +#![feature(const_result)] +#![feature(const_slice_from_ref)] #![feature(const_trait_impl)] -#![feature(const_likely)] -#![feature(const_location_fields)] +#![feature(const_waker)] #![feature(core_intrinsics)] #![feature(core_private_bignum)] #![feature(core_private_diy_float)] #![feature(dec2flt)] #![feature(div_duration)] -#![feature(duration_consts_float)] #![feature(duration_constants)] +#![feature(duration_consts_float)] #![feature(exact_size_is_empty)] #![feature(extern_types)] +#![feature(float_minimum_maximum)] #![feature(flt2dec)] #![feature(fmt_internals)] -#![feature(float_minimum_maximum)] #![feature(future_join)] #![feature(generic_assert_internals)] -#![feature(array_try_from_fn)] +#![feature(get_many_mut)] #![feature(hasher_prefixfree_extras)] #![feature(hashmap_internals)] -#![feature(try_find)] #![feature(inline_const)] -#![feature(is_sorted)] -#![feature(layout_for_ptr)] -#![feature(pattern)] -#![feature(sort_internals)] -#![feature(slice_take)] -#![feature(slice_from_ptr_range)] -#![feature(split_as_slice)] -#![feature(maybe_uninit_uninit_array)] -#![feature(maybe_uninit_write_slice)] -#![feature(maybe_uninit_uninit_array_transpose)] -#![feature(min_specialization)] -#![feature(numfmt)] -#![feature(num_midpoint)] -#![feature(step_trait)] -#![feature(str_internals)] -#![feature(std_internals)] -#![feature(test)] -#![feature(trusted_len)] -#![feature(try_blocks)] -#![feature(try_trait_v2)] -#![feature(slice_internals)] -#![feature(slice_partition_dedup)] +#![feature(int_roundings)] #![feature(ip)] #![feature(ip_in_core)] +#![feature(is_ascii_octdigit)] +#![feature(is_sorted)] #![feature(iter_advance_by)] #![feature(iter_array_chunks)] #![feature(iter_collect_into)] -#![feature(iter_partition_in_place)] #![feature(iter_intersperse)] #![feature(iter_is_partitioned)] #![feature(iter_next_chunk)] #![feature(iter_order_by)] +#![feature(iter_partition_in_place)] #![feature(iter_repeat_n)] #![feature(iterator_try_collect)] #![feature(iterator_try_reduce)] -#![feature(const_ip)] -#![feature(const_ipv4)] -#![feature(const_ipv6)] -#![feature(const_mut_refs)] -#![feature(const_pin)] -#![feature(const_waker)] +#![feature(layout_for_ptr)] +#![feature(lazy_cell)] +#![feature(maybe_uninit_uninit_array)] +#![feature(maybe_uninit_uninit_array_transpose)] +#![feature(maybe_uninit_write_slice)] +#![feature(min_specialization)] #![feature(never_type)] -#![feature(unwrap_infallible)] +#![feature(num_midpoint)] +#![feature(numfmt)] +#![feature(offset_of)] +#![feature(pattern)] #![feature(pointer_byte_offsets)] #![feature(pointer_is_aligned)] #![feature(portable_simd)] +#![feature(provide_any)] #![feature(ptr_metadata)] -#![feature(lazy_cell)] -#![feature(unsized_tuple_coercion)] -#![feature(const_option)] -#![feature(const_option_ext)] -#![feature(const_result)] -#![cfg_attr(target_has_atomic = "128", feature(integer_atomics))] -#![feature(int_roundings)] +#![feature(slice_flatten)] +#![feature(slice_from_ptr_range)] #![feature(slice_group_by)] +#![feature(slice_internals)] +#![feature(slice_partition_dedup)] +#![feature(slice_take)] +#![feature(sort_internals)] #![feature(split_array)] +#![feature(split_as_slice)] +#![feature(std_internals)] +#![feature(step_trait)] +#![feature(str_internals)] #![feature(strict_provenance)] #![feature(strict_provenance_atomic_ptr)] +#![feature(test)] +#![feature(trusted_len)] #![feature(trusted_random_access)] +#![feature(try_blocks)] +#![feature(try_find)] +#![feature(try_trait_v2)] #![feature(unsize)] -#![feature(const_array_from_ref)] -#![feature(const_slice_from_ref)] -#![feature(waker_getters)] -#![feature(slice_flatten)] -#![feature(provide_any)] +#![feature(unsized_tuple_coercion)] +#![feature(unwrap_infallible)] #![feature(utf8_chunks)] -#![feature(is_ascii_octdigit)] -#![feature(get_many_mut)] -#![feature(offset_of)] -#![deny(unsafe_op_in_unsafe_fn)] -#![deny(fuzzy_provenance_casts)] +#![feature(waker_getters)] +// tidy-alphabetical-end +#![cfg_attr(target_has_atomic = "128", feature(integer_atomics))] extern crate test; diff --git a/library/panic_abort/src/lib.rs b/library/panic_abort/src/lib.rs index 76b3591965851..d8b4e02cd9154 100644 --- a/library/panic_abort/src/lib.rs +++ b/library/panic_abort/src/lib.rs @@ -8,12 +8,14 @@ #![doc(issue_tracker_base_url = "https://github.com/rust-lang/rust/issues/")] #![panic_runtime] #![allow(unused_features)] +// tidy-alphabetical-start +#![feature(c_unwind)] #![feature(core_intrinsics)] #![feature(panic_runtime)] -#![feature(std_internals)] -#![feature(staged_api)] #![feature(rustc_attrs)] -#![feature(c_unwind)] +#![feature(staged_api)] +#![feature(std_internals)] +// tidy-alphabetical-end #![cfg_attr(not(bootstrap), allow(internal_features))] #[cfg(target_os = "android")] diff --git a/library/panic_unwind/src/lib.rs b/library/panic_unwind/src/lib.rs index 009014de5c2c4..60aa498746b26 100644 --- a/library/panic_unwind/src/lib.rs +++ b/library/panic_unwind/src/lib.rs @@ -14,16 +14,18 @@ #![no_std] #![unstable(feature = "panic_unwind", issue = "32837")] #![doc(issue_tracker_base_url = "https://github.com/rust-lang/rust/issues/")] +// tidy-alphabetical-start +#![feature(c_unwind)] #![feature(core_intrinsics)] #![feature(lang_items)] +#![feature(panic_runtime)] #![feature(panic_unwind)] +#![feature(rustc_attrs)] #![feature(staged_api)] #![feature(std_internals)] +// tidy-alphabetical-end #![cfg_attr(bootstrap, feature(abi_thiscall))] -#![feature(rustc_attrs)] #![panic_runtime] -#![feature(panic_runtime)] -#![feature(c_unwind)] // `real_imp` is unused with Miri, so silence warnings. #![cfg_attr(miri, allow(dead_code))] #![cfg_attr(not(bootstrap), allow(internal_features))] diff --git a/library/portable-simd/crates/core_simd/src/lib.rs b/library/portable-simd/crates/core_simd/src/lib.rs index fde406bda7060..829fd7c4ef6ec 100644 --- a/library/portable-simd/crates/core_simd/src/lib.rs +++ b/library/portable-simd/crates/core_simd/src/lib.rs @@ -1,19 +1,19 @@ #![no_std] -#![feature( - const_refs_to_cell, - const_maybe_uninit_as_mut_ptr, - const_mut_refs, - convert_float_to_int, - decl_macro, - intra_doc_pointers, - platform_intrinsics, - repr_simd, - simd_ffi, - staged_api, - stdsimd, - strict_provenance, - ptr_metadata -)] +// tidy-alphabetical-start +#![feature(const_maybe_uninit_as_mut_ptr)] +#![feature(const_mut_refs)] +#![feature(const_refs_to_cell)] +#![feature(convert_float_to_int)] +#![feature(decl_macro)] +#![feature(intra_doc_pointers)] +#![feature(platform_intrinsics)] +#![feature(ptr_metadat)] +#![feature(repr_simd)] +#![feature(simd_ffi)] +#![feature(staged_api)] +#![feature(stdsimd)] +#![feature(strict_provenance)] +// tidy-alphabetical-end #![cfg_attr(feature = "generic_const_exprs", feature(generic_const_exprs))] #![cfg_attr(feature = "generic_const_exprs", allow(incomplete_features))] #![warn(missing_docs, clippy::missing_inline_in_public_items)] // basically all items, really diff --git a/library/proc_macro/src/lib.rs b/library/proc_macro/src/lib.rs index be89afa32b33d..5addfe0b39c27 100644 --- a/library/proc_macro/src/lib.rs +++ b/library/proc_macro/src/lib.rs @@ -20,18 +20,20 @@ // This library is copied into rust-analyzer to allow loading rustc compiled proc macros. // Please avoid unstable features where possible to minimize the amount of changes necessary // to make it compile with rust-analyzer on stable. -#![feature(rustc_allow_const_fn_unstable)] -#![feature(staged_api)] +// tidy-alphabetical-start #![feature(allow_internal_unstable)] #![feature(decl_macro)] #![feature(local_key_cell_methods)] #![feature(maybe_uninit_write_slice)] +#![feature(min_specialization)] #![feature(negative_impls)] #![feature(new_uninit)] #![feature(restricted_std)] +#![feature(rustc_allow_const_fn_unstable)] #![feature(rustc_attrs)] -#![feature(min_specialization)] +#![feature(staged_api)] #![feature(strict_provenance)] +// tidy-alphabetical-end #![recursion_limit = "256"] #![cfg_attr(not(bootstrap), allow(internal_features))] diff --git a/library/profiler_builtins/src/lib.rs b/library/profiler_builtins/src/lib.rs index a81d0a63547f8..1eecc3545b01e 100644 --- a/library/profiler_builtins/src/lib.rs +++ b/library/profiler_builtins/src/lib.rs @@ -1,11 +1,13 @@ #![no_std] -#![feature(profiler_runtime)] #![profiler_runtime] #![unstable( feature = "profiler_runtime_lib", reason = "internal implementation detail of rustc right now", issue = "none" )] +// tidy-alphabetical-start #![allow(unused_features)] -#![cfg_attr(not(bootstrap), allow(internal_features))] +#![feature(profiler_runtime)] #![feature(staged_api)] +// tidy-alphabetical-end +#![cfg_attr(not(bootstrap), allow(internal_features))] diff --git a/library/test/src/lib.rs b/library/test/src/lib.rs index 64d10dd5712ab..9e431ff0720f5 100644 --- a/library/test/src/lib.rs +++ b/library/test/src/lib.rs @@ -16,11 +16,13 @@ #![unstable(feature = "test", issue = "50297")] #![doc(test(attr(deny(warnings))))] +// tidy-alphabetical-start #![feature(internal_output_capture)] -#![feature(staged_api)] -#![feature(process_exitcode_internals)] #![feature(panic_can_unwind)] +#![feature(process_exitcode_internals)] +#![feature(staged_api)] #![feature(test)] +// tidy-alphabetical-end #![cfg_attr(not(bootstrap), allow(internal_features))] // Public reexports diff --git a/library/unwind/src/lib.rs b/library/unwind/src/lib.rs index 0b4daeafe46df..8f1b1318aa715 100644 --- a/library/unwind/src/lib.rs +++ b/library/unwind/src/lib.rs @@ -1,9 +1,11 @@ #![no_std] #![unstable(feature = "panic_unwind", issue = "32837")] -#![feature(link_cfg)] -#![feature(staged_api)] +// tidy-alphabetical-start #![feature(c_unwind)] #![feature(cfg_target_abi)] +#![feature(link_cfg)] +#![feature(staged_api)] +// tidy-alphabetical-end #![cfg_attr(not(target_env = "msvc"), feature(libc))] #![cfg_attr(not(bootstrap), allow(internal_features))] diff --git a/src/librustdoc/lib.rs b/src/librustdoc/lib.rs index 36d087a7d5be6..4b46314dfdf68 100644 --- a/src/librustdoc/lib.rs +++ b/src/librustdoc/lib.rs @@ -2,7 +2,7 @@ html_root_url = "https://doc.rust-lang.org/nightly/", html_playground_url = "https://play.rust-lang.org/" )] -#![feature(rustc_private)] +// tidy-alphabetical-start #![feature(array_methods)] #![feature(assert_matches)] #![feature(box_patterns)] @@ -12,9 +12,11 @@ #![feature(let_chains)] #![feature(never_type)] #![feature(round_char_boundary)] +#![feature(rustc_private)] #![feature(test)] #![feature(type_alias_impl_trait)] #![feature(type_ascription)] +// tidy-alphabetical-end #![recursion_limit = "256"] #![warn(rustc::internal)] #![allow(clippy::collapsible_if, clippy::collapsible_else_if)] diff --git a/src/tools/clippy/clippy_dev/src/lib.rs b/src/tools/clippy/clippy_dev/src/lib.rs index c4ae4f0e2bdd6..f6d797c2c3d0f 100644 --- a/src/tools/clippy/clippy_dev/src/lib.rs +++ b/src/tools/clippy/clippy_dev/src/lib.rs @@ -1,9 +1,12 @@ +// tidy-alphabetical-start #![feature(lazy_cell)] #![feature(let_chains)] #![feature(rustc_private)] +// tidy-alphabetical-end #![cfg_attr(feature = "deny-warnings", deny(warnings))] // warn on lints, that are included in `rust-lang/rust`s bootstrap -#![warn(rust_2018_idioms, unused_lifetimes)] +#![warn(rust_2018_idioms)] +#![warn(unused_lifetimes)] // The `rustc_driver` crate seems to be required in order to use the `rust_lexer` crate. #[allow(unused_extern_crates)] diff --git a/src/tools/clippy/clippy_lints/src/lib.rs b/src/tools/clippy/clippy_lints/src/lib.rs index 358004cf460b1..40d66ac978189 100644 --- a/src/tools/clippy/clippy_lints/src/lib.rs +++ b/src/tools/clippy/clippy_lints/src/lib.rs @@ -1,3 +1,4 @@ +// tidy-alphabetical-start #![feature(array_windows)] #![feature(binary_heap_into_iter_sorted)] #![feature(box_patterns)] @@ -8,6 +9,7 @@ #![feature(never_type)] #![feature(rustc_private)] #![feature(stmt_expr_attributes)] +// tidy-alphabetical-end #![recursion_limit = "512"] #![cfg_attr(feature = "deny-warnings", deny(warnings))] #![allow(clippy::missing_docs_in_private_items, clippy::must_use_candidate)] diff --git a/src/tools/clippy/clippy_utils/src/lib.rs b/src/tools/clippy/clippy_utils/src/lib.rs index 171b7faf21960..63bc168034f70 100644 --- a/src/tools/clippy/clippy_utils/src/lib.rs +++ b/src/tools/clippy/clippy_utils/src/lib.rs @@ -1,3 +1,7 @@ +// tidy-alphabetical-start +#![allow(clippy::missing_errors_doc)] +#![allow(clippy::missing_panics_doc)] +#![allow(clippy::must_use_candidate)] #![feature(array_chunks)] #![feature(box_patterns)] #![feature(if_let_guard)] @@ -5,13 +9,15 @@ #![feature(lint_reasons)] #![feature(never_type)] #![feature(rustc_private)] +// tidy-alphabetical-end #![recursion_limit = "512"] #![cfg_attr(feature = "deny-warnings", deny(warnings))] -#![allow(clippy::missing_errors_doc, clippy::missing_panics_doc, clippy::must_use_candidate)] // warn on the same lints as `clippy_lints` -#![warn(trivial_casts, trivial_numeric_casts)] +#![warn(trivial_casts)] +#![warn(trivial_numeric_casts)] // warn on lints, that are included in `rust-lang/rust`s bootstrap -#![warn(rust_2018_idioms, unused_lifetimes)] +#![warn(rust_2018_idioms)] +#![warn(unused_lifetimes)] // warn on rustc internal lints #![warn(rustc::internal)] diff --git a/src/tools/clippy/declare_clippy_lint/src/lib.rs b/src/tools/clippy/declare_clippy_lint/src/lib.rs index 0057256f659b5..e0ca68b16456e 100644 --- a/src/tools/clippy/declare_clippy_lint/src/lib.rs +++ b/src/tools/clippy/declare_clippy_lint/src/lib.rs @@ -1,7 +1,8 @@ #![feature(let_chains)] #![cfg_attr(feature = "deny-warnings", deny(warnings))] // warn on lints, that are included in `rust-lang/rust`s bootstrap -#![warn(rust_2018_idioms, unused_lifetimes)] +#![warn(rust_2018_idioms)] +#![warn(unused_lifetimes)] use proc_macro::TokenStream; use quote::{format_ident, quote}; diff --git a/src/tools/miri/src/lib.rs b/src/tools/miri/src/lib.rs index 0e50618ad9ec6..656927072b4db 100644 --- a/src/tools/miri/src/lib.rs +++ b/src/tools/miri/src/lib.rs @@ -1,48 +1,48 @@ -#![feature(rustc_private)] +// tidy-alphabetical-start #![feature(float_gamma)] +#![feature(io_error_more)] +#![feature(lint_reasons)] +#![feature(local_key_cell_methods)] #![feature(map_try_insert)] #![feature(never_type)] -#![feature(try_blocks)] -#![feature(io_error_more)] -#![feature(variant_count)] -#![feature(yeet_expr)] #![feature(nonzero_ops)] -#![feature(local_key_cell_methods)] -#![feature(round_ties_even)] #![feature(os_str_bytes)] -#![feature(lint_reasons)] +#![feature(round_ties_even)] +#![feature(rustc_private)] #![feature(trait_upcasting)] -// Configure clippy and other lints -#![allow( - clippy::collapsible_else_if, - clippy::collapsible_if, - clippy::if_same_then_else, - clippy::comparison_chain, - clippy::enum_variant_names, - clippy::field_reassign_with_default, - clippy::manual_map, - clippy::neg_cmp_op_on_partial_ord, - clippy::new_without_default, - clippy::single_match, - clippy::useless_format, - clippy::derive_partial_eq_without_eq, - clippy::derived_hash_with_manual_eq, - clippy::too_many_arguments, - clippy::type_complexity, - clippy::single_element_loop, - clippy::needless_return, - clippy::bool_to_int_with_if, - clippy::box_default, - // We are not implementing queries here so it's fine - rustc::potential_query_instability -)] -#![warn( - rust_2018_idioms, - clippy::cast_possible_wrap, // unsigned -> signed - clippy::cast_sign_loss, // signed -> unsigned - clippy::cast_lossless, - clippy::cast_possible_truncation, -)] +#![feature(try_blocks)] +#![feature(variant_count)] +#![feature(yeet_expr)] +// tidy-alphabetical-end +// tidy-alphabetical-start +#![allow(clippy::bool_to_int_with_if)] +#![allow(clippy::box_defaul)] +#![allow(clippy::box_default)] +#![allow(clippy::collapsible_else_if)] +#![allow(clippy::collapsible_if)] +#![allow(clippy::comparison_chain)] +#![allow(clippy::derived_hash_with_manual_eq)] +#![allow(clippy::derive_partial_eq_without_eq)] +#![allow(clippy::enum_variant_names)] +#![allow(clippy::field_reassign_with_default)] +#![allow(clippy::if_same_then_else)] +#![allow(clippy::manual_map)] +#![allow(clippy::needless_return)] +#![allow(clippy::neg_cmp_op_on_partial_ord)] +#![allow(clippy::new_without_default)] +#![allow(clippy::single_element_loop)] +#![allow(clippy::single_match)] +#![allow(clippy::too_many_arguments)] +#![allow(clippy::type_complexity)] +#![allow(clippy::useless_format)] +#![warn(clippy::cast_lossless)] +#![warn(clippy::cast_possible_truncation)] +#![warn(clippy::cast_possible_wrap)] +#![warn(clippy::cast_sign_loss)] +#![warn(rust_2018_idioms)] +// tidy-alphabetical-end +// We are not implementing queries here so it's fine +#![allow(rustc::potential_query_instability)] // Needed for rustdoc from bootstrap (with `-Znormalize-docs`). #![recursion_limit = "256"] diff --git a/src/tools/rust-analyzer/crates/proc-macro-srv/src/lib.rs b/src/tools/rust-analyzer/crates/proc-macro-srv/src/lib.rs index 84bd15efb8bee..73ca297630c21 100644 --- a/src/tools/rust-analyzer/crates/proc-macro-srv/src/lib.rs +++ b/src/tools/rust-analyzer/crates/proc-macro-srv/src/lib.rs @@ -11,9 +11,17 @@ //! rustc rather than `unstable`. (Although in general ABI compatibility is still an issue)… #![cfg(feature = "sysroot-abi")] -#![feature(proc_macro_internals, proc_macro_diagnostic, proc_macro_span)] -#![warn(rust_2018_idioms, unused_lifetimes, semicolon_in_expressions_from_macros)] +// tidy-alphabetical-start +#![feature(proc_macro_diagnostic)] +#![feature(proc_macro_internals)] +#![feature(proc_macro_span)] +// tidy-alphabetical-end +// tidy-alphabetical-start #![allow(unreachable_pub)] +#![warn(rust_2018_idioms)] +#![warn(semicolon_in_expressions_from_macros)] +#![warn(unused_lifetimes)] +// tidy-alphabetical-end extern crate proc_macro; diff --git a/src/tools/rustfmt/src/lib.rs b/src/tools/rustfmt/src/lib.rs index 567628f63bdf2..41ac5466f2ce6 100644 --- a/src/tools/rustfmt/src/lib.rs +++ b/src/tools/rustfmt/src/lib.rs @@ -1,9 +1,11 @@ #![feature(rustc_private)] +// tidy-alphabetical-start +#![allow(clippy::match_like_matches_macro)] +#![allow(unreachable_pub)] #![deny(rust_2018_idioms)] #![warn(unreachable_pub)] +// tidy-alphabetical-end #![recursion_limit = "256"] -#![allow(clippy::match_like_matches_macro)] -#![allow(unreachable_pub)] #[cfg(test)] #[macro_use] diff --git a/src/tools/rustfmt/tests/source/cfg_if/lib.rs b/src/tools/rustfmt/tests/source/cfg_if/lib.rs index 8b3bb304f1c83..1ca308ea5dfe3 100644 --- a/src/tools/rustfmt/tests/source/cfg_if/lib.rs +++ b/src/tools/rustfmt/tests/source/cfg_if/lib.rs @@ -12,9 +12,15 @@ //! * `powerpc64`: [`is_powerpc64_feature_detected`] #![unstable(feature = "stdsimd", issue = "27731")] -#![feature(const_fn, staged_api, stdsimd, doc_cfg, allow_internal_unstable)] +// tidy-alphabetical-start #![allow(clippy::shadow_reuse)] #![deny(clippy::missing_inline_in_public_items)] +#![feature(allow_internal_unstable)] +#![feature(const_fn)] +#![feature(doc_cfg)] +#![feature(staged_api)] +#![feature(stdsimd)] +// tidy-alphabetical-end #![cfg_attr(target_os = "linux", feature(linkage))] #![cfg_attr(all(target_os = "freebsd", target_arch = "aarch64"), feature(asm))] #![cfg_attr(stdsimd_strict, deny(warnings))] diff --git a/src/tools/rustfmt/tests/target/cfg_if/lib.rs b/src/tools/rustfmt/tests/target/cfg_if/lib.rs index 8b3bb304f1c83..1ca308ea5dfe3 100644 --- a/src/tools/rustfmt/tests/target/cfg_if/lib.rs +++ b/src/tools/rustfmt/tests/target/cfg_if/lib.rs @@ -12,9 +12,15 @@ //! * `powerpc64`: [`is_powerpc64_feature_detected`] #![unstable(feature = "stdsimd", issue = "27731")] -#![feature(const_fn, staged_api, stdsimd, doc_cfg, allow_internal_unstable)] +// tidy-alphabetical-start #![allow(clippy::shadow_reuse)] #![deny(clippy::missing_inline_in_public_items)] +#![feature(allow_internal_unstable)] +#![feature(const_fn)] +#![feature(doc_cfg)] +#![feature(staged_api)] +#![feature(stdsimd)] +// tidy-alphabetical-end #![cfg_attr(target_os = "linux", feature(linkage))] #![cfg_attr(all(target_os = "freebsd", target_arch = "aarch64"), feature(asm))] #![cfg_attr(stdsimd_strict, deny(warnings))] diff --git a/tests/run-make/raw-dylib-cross-compilation/lib.rs b/tests/run-make/raw-dylib-cross-compilation/lib.rs index 3338ac0a0b50f..28693664ac595 100644 --- a/tests/run-make/raw-dylib-cross-compilation/lib.rs +++ b/tests/run-make/raw-dylib-cross-compilation/lib.rs @@ -1,4 +1,7 @@ -#![feature(no_core, lang_items)] +// tidy-alphabetical-start +#![feature(lang_items)] +#![feature(no_core)] +// tidy-alphabetical-end #![no_std] #![no_core] #![crate_type = "lib"] @@ -8,7 +11,7 @@ trait Sized {} #[link(name = "extern_1", kind = "raw-dylib")] -extern { +extern "C" { fn extern_fn(); } diff --git a/tests/run-make/wasm-exceptions-nostd/src/lib.rs b/tests/run-make/wasm-exceptions-nostd/src/lib.rs index 7049d2fd9e0d1..f3351b8e1ff57 100644 --- a/tests/run-make/wasm-exceptions-nostd/src/lib.rs +++ b/tests/run-make/wasm-exceptions-nostd/src/lib.rs @@ -4,10 +4,12 @@ // Allow a few unstable features because we create a panic // runtime for native wasm exceptions from scratch +// tidy-alphabetical-start #![feature(core_intrinsics)] #![feature(lang_items)] #![feature(link_llvm_intrinsics)] #![feature(panic_info_message)] +// tidy-alphabetical-end extern crate alloc; diff --git a/tests/rustdoc-gui/search-reexport.goml b/tests/rustdoc-gui/search-reexport.goml index b9d2c8f15cee1..8f77d0b141d09 100644 --- a/tests/rustdoc-gui/search-reexport.goml +++ b/tests/rustdoc-gui/search-reexport.goml @@ -4,7 +4,7 @@ go-to: "file://" + |DOC_PATH| + "/test_docs/index.html" set-local-storage: {"rustdoc-theme": "dark", "rustdoc-use-system-theme": "false"} reload: // First we check that the reexport has the correct ID and no background color. -assert-text: ("//*[@id='reexport.TheStdReexport']", "pub use ::std as TheStdReexport;") +assert-text: ("//*[@id='reexport.TheStdReexport']", "pub use std as TheStdReexport;") assert-css: ("//*[@id='reexport.TheStdReexport']", {"background-color": "rgba(0, 0, 0, 0)"}) write: (".search-input", "TheStdReexport") // To be SURE that the search will be run. diff --git a/tests/rustdoc-gui/src/test_docs/lib.rs b/tests/rustdoc-gui/src/test_docs/lib.rs index 49484ee086960..c1b7bd4a421e1 100644 --- a/tests/rustdoc-gui/src/test_docs/lib.rs +++ b/tests/rustdoc-gui/src/test_docs/lib.rs @@ -1,12 +1,13 @@ //! The point of this crate is to be able to have enough different "kinds" of //! documentation generated so we can test each different features. -#![doc(html_playground_url="https://play.rust-lang.org/")] - +#![doc(html_playground_url = "https://play.rust-lang.org/")] #![crate_name = "test_docs"] #![allow(internal_features)] -#![feature(rustdoc_internals)] -#![feature(doc_cfg)] +// tidy-alphabetical-start #![feature(associated_type_defaults)] +#![feature(doc_cfg)] +#![feature(rustdoc_internals)] +// tidy-alphabetical-end /*! Enable the feature some-feature to enjoy @@ -301,7 +302,7 @@ pub trait EmptyTrait1 {} pub trait EmptyTrait2 {} pub trait EmptyTrait3 {} -pub struct HasEmptyTraits{} +pub struct HasEmptyTraits {} impl EmptyTrait1 for HasEmptyTraits {} impl EmptyTrait2 for HasEmptyTraits {} @@ -312,7 +313,7 @@ mod macros; pub use macros::*; #[doc(alias = "AliasForTheStdReexport")] -pub use ::std as TheStdReexport; +pub use std as TheStdReexport; pub mod details { /// We check the appearance of the `
`/`` in here. @@ -364,19 +365,22 @@ pub mod doc_block_table { println!(); } } - } pub struct NotableStructWithLongName(R); impl NotableStructWithLongName { - pub fn create_an_iterator_from_read(r: R) -> NotableStructWithLongName { Self(r) } + pub fn create_an_iterator_from_read(r: R) -> NotableStructWithLongName { + Self(r) + } } impl std::iter::Iterator for NotableStructWithLongName { type Item = (); - fn next(&mut self) -> Option { () } + fn next(&mut self) -> Option { + () + } } pub trait TraitWithNoDocblocks { @@ -485,7 +489,6 @@ pub mod search_results { macro_rules! foo { () => {}; } - } pub mod fields { @@ -498,14 +501,8 @@ pub mod fields { pub b: u32, } pub enum Enum { - A { - a: u8, - b: u32, - }, - B { - a: u8, - b: u32, - }, + A { a: u8, b: u32 }, + B { a: u8, b: u32 }, } }