I think we may have strict aliasing violation in `vec_cast.h` (to be confirmed). If it's the case, we should fix it because it's an UB (and even if it works now, it may break as compiler becomes better).