tag manager google warnings compiler-warnings rust dead-code

warnings - manager - ¿Cómo deshabilitar las advertencias de código no utilizadas en Rust?



google tag manager (3)

struct SemanticDirection; fn main() {}

warning: struct is never used: `SemanticDirection` --> src/main.rs:1:1 | 1 | struct SemanticDirection; | ^^^^^^^^^^^^^^^^^^^^^^^^^ | = note: #[warn(dead_code)] on by default

Volveré a activar estas advertencias para cualquier cosa grave, pero solo estoy jugando con el lenguaje y esto me está volviendo loco.

Intenté agregar #[allow(dead_code)] a mi código, pero eso no funcionó.


Hacer público el código también detiene las advertencias; también necesitarás hacer público el mod adjunto.

Esto tiene sentido cuando está escribiendo una biblioteca: su código está "sin usar" internamente porque está destinado a ser utilizado por el código del cliente.


Otra forma de deshabilitar esta advertencia es prefijar el identificador por _ :

struct _UnusedStruct { _unused_field: i32, } fn main() { let _unused_variable = 10; }

Esto puede ser útil, por ejemplo, con una ventana SDL:

let _window = video_subsystem.window("Rust SDL2 demo", 800, 600);

Prefijar con un guión bajo es diferente de usar un guión bajo solitario como nombre. Hacer lo siguiente destruirá inmediatamente la ventana, lo cual es poco probable que sea el comportamiento previsto.

let _ = video_subsystem.window("Rust SDL2 demo", 800, 600);


Tu también puedes:

  • Agregue un atributo de permiso en una estructura, módulo, función, etc.

    #[allow(dead_code)] struct SemanticDirection;

  • Agregue un atributo de permiso de nivel de caja ; cuenta el ! :

    #![allow(dead_code)]

  • Pásalo a rustc :

    rustc -A dead_code main.rs

  • Pásalo con cargo través de la variable de entorno RUSTFLAGS :

    RUSTFLAGS="$RUSTFLAGS -A dead_code" cargo build