Can someone explain the CVS 2021 46102 bug? Various sources tell me it was an integer overflow in some Rust. The faulty line was:
let addr = (sym.st_value + refd_pa) as u64;
I guess, the + is evaluated using 32-bit arithmetic and then it is cast to a u64, and thus overflow is possible? And in release mode, Rust doesn't trap integer overflow.Shouldn't something as critical as the EBF compiler be trapping integer overflow?