Joseph Myers wrote: > int32_t val = state[0]; > - val = ((state[0] * 1103515245) + 12345) & 0x7fffffff; > + val = ((state[0] * 1103515245U) + 12345U) & 0x7fffffff; The first assignment to VAL (in the unchanged line) is unnecessary; I suggest coalescing the two lines.