28.03.2014 19:12, Peter Maydell wrote: > Add casts when we're performing arithmetic on the .hi parts of an > Int128, to avoid undefined behaviour. [] > static inline Int128 int128_sub(Int128 a, Int128 b) > { > - return (Int128){ a.lo - b.lo, a.hi - b.hi - (a.lo < b.lo) }; > + return (Int128){ a.lo - b.lo, (uint64_t)a.hi - b.hi - (a.lo < b.lo) };
What was wrong with this one? I don't think casting to unsigned here is a good idea. Thanks, /mjt