G.TYP.BOL.03 不应将数字类型转换为布尔值

【级别】 要求

【描述】

这可能会让布尔值在内存中的表示无效。

【反例】


#![allow(unused)]
fn main() {
let x = 1_u8;
unsafe {
    // 不符合
    let _: bool = std::mem::transmute(x); // where x: u8
}

}

【Lint 检测】

lint nameClippy 可检测Rustc 可检测Lint Grouplevel
transmute_int_to_bool yesnocomplexitywarn