You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We were hit by the fact that e.g. <u32 as Add>::add now invokes checked_binop(Add) (i.e. the codegen backend equivalent of u32::overflowing_add), ignoring the bool "did it overflow?" flag only in the MIR Assert for overflow checks.
The fix seemed to work, but it's fundamentally flawed because of using Add (or Sub or Mul) and the constant false anywhere in the same crate (well, codegen unit to be more precise, so this is a bit tricky to trigger), will cause the OpConstantFalse instruction used by both to be annotated with the checked add is not supported yet.
cc @Shfty (who ran into this in their project, that also triggered #1021, after switching to Rust-GPU main)
The text was updated successfully, but these errors were encountered:
In this most recent nightly update:
nightly-2023-03-04
#1005We were hit by the fact that e.g.
<u32 as Add>::add
now invokeschecked_binop(Add)
(i.e. the codegen backend equivalent ofu32::overflowing_add
), ignoring thebool
"did it overflow?" flag only in the MIRAssert
for overflow checks.The fix seemed to work, but it's fundamentally flawed because of using
Add
(orSub
orMul
) and the constantfalse
anywhere in the same crate (well, codegen unit to be more precise, so this is a bit tricky to trigger), will cause theOpConstantFalse
instruction used by both to be annotated with thechecked add is not supported yet
.cc @Shfty (who ran into this in their project, that also triggered #1021, after switching to Rust-GPU
main
)The text was updated successfully, but these errors were encountered: