mirror of
https://github.com/kmc7468/cs420.git
synced 2025-12-16 15:38:48 +00:00
Lots of improvements.
* Better script names and grammar fix. * Bump Rust * Enforce more lints. * Improve few struct definitions by removing box. * Many minor implementation improvements.
This commit is contained in:
41
src/lib.rs
41
src/lib.rs
@@ -1,44 +1,51 @@
|
||||
//! KECC: KAIST Educational C Compiler.
|
||||
|
||||
// Tries to deny all lints (`rustc -W help`).
|
||||
#![deny(clippy::all)]
|
||||
#![deny(rustdoc::all)]
|
||||
#![deny(warnings)]
|
||||
// Tries to deny all rustc allow lints.
|
||||
// <https://doc.rust-lang.org/rustc/lints/listing/allowed-by-default.html>
|
||||
#![deny(absolute_paths_not_starting_with_crate)]
|
||||
#![deny(anonymous_parameters)]
|
||||
// Old, historical lint
|
||||
// #![deny(box_pointers)]
|
||||
#![deny(deprecated_in_future)]
|
||||
#![deny(elided_lifetimes_in_paths)]
|
||||
#![deny(explicit_outlives_requirements)]
|
||||
#![deny(rustdoc::invalid_html_tags)]
|
||||
#![deny(keyword_idents)]
|
||||
#![deny(let_underscore_drop)]
|
||||
#![deny(macro_use_extern_crate)]
|
||||
#![deny(meta_variable_misuse)]
|
||||
#![deny(missing_abi)]
|
||||
#![deny(missing_copy_implementations)]
|
||||
#![deny(missing_debug_implementations)]
|
||||
// #![deny(missing_docs)] TODO
|
||||
#![deny(rustdoc::missing_doc_code_examples)]
|
||||
// TODO
|
||||
// #![deny(missing_docs)]
|
||||
#![deny(non_ascii_idents)]
|
||||
#![deny(noop_method_call)]
|
||||
#![deny(pointer_structural_match)]
|
||||
#![deny(rust_2021_incompatible_closure_captures)]
|
||||
#![deny(rust_2021_incompatible_or_patterns)]
|
||||
#![deny(rust_2021_prefixes_incompatible_syntax)]
|
||||
#![deny(rust_2021_prelude_collisions)]
|
||||
// Necessary for skeleton code.
|
||||
// #![deny(single_use_lifetimes)]
|
||||
#![deny(trivial_casts)]
|
||||
#![deny(trivial_numeric_casts)]
|
||||
#![deny(unaligned_references)]
|
||||
// Necessary for skeleton code.
|
||||
// #![deny(unreachable_pub)]
|
||||
#![deny(unsafe_code)]
|
||||
#![deny(unsafe_op_in_unsafe_fn)]
|
||||
#![deny(unstable_features)]
|
||||
// Necessary for `build-bin` trick.
|
||||
// #![deny(unused_crate_dependencies)]
|
||||
#![deny(unused_extern_crates)]
|
||||
#![deny(unused_import_braces)]
|
||||
#![deny(unused_lifetimes)]
|
||||
#![deny(unused_macro_rules)]
|
||||
#![deny(unused_qualifications)]
|
||||
#![deny(unused_results)]
|
||||
#![deny(unused_tuple_struct_fields)]
|
||||
// Allowed for more flexible variants.
|
||||
// #![deny(variant_size_differences)]
|
||||
#![deny(rust_2018_idioms)]
|
||||
#![deny(rustdoc::all)]
|
||||
// Necessary for skeleton code.
|
||||
#![allow(unreachable_code)]
|
||||
// Necessary to allow `iter.fold(false, |l, r| l || r)`. It's used when iteration should not be
|
||||
// short-circuited.
|
||||
#![allow(clippy::unnecessary_fold)]
|
||||
#![allow(clippy::result_unit_err)]
|
||||
#![allow(clippy::vec_init_then_push)]
|
||||
#![allow(clippy::collapsible_match)]
|
||||
|
||||
mod tests;
|
||||
mod utils;
|
||||
|
||||
Reference in New Issue
Block a user