Is there a website with non-UB C code snippets for stuff that is UB if done directly (like converting uint to int assuming twos complement)?
hmm.. cprover (cbmc) is not happy with that: "arithmetic overflow on signed to unsigned type conversion in (unsigned int)-1"
-
-
Pretty sure per the C standard that's required to produce 0U-1U - or UINT_MAX
-
Yes, conversion from signed to unsigned is completely defined.
- Show replies
New conversation -
-
-
That's a bad bug in a C prover, since the behavior is fully defined.
Thanks. Twitter will use this to make your timeline better. UndoUndo
-
-
-
jfyi everyone: This version passes all cbmc checks (b is an uint64_t).pic.twitter.com/DKExVdRkeS
-
I prefer my version because it's algebraically obvious that the two branches collapse to the same thing, without thinking of def'n of ~.
End of conversation
New conversation -
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.