On Fri, Dec 05, 2008 at 02:31:49AM +0100, Vincent Lefevre wrote: > > h = (h * SOMEPRIME) % n; > > - h = (h >= 0) ? h : h + n; Unless either h or n is unsigned, the C language doesn't define the sign of h % n. So the deleted line is required to ensure the returned h is positive. David -- David Laight: david@xxxxxxxxx