http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51795
--- Comment #27 from Paolo Carlini <paolo.carlini at oracle dot com> 2012-01-28 10:51:12 UTC --- It seems to me that something still safe to do now for 4.7.0 is special casing the case x == m - 1 to x' = m - a, because, if I understand correctly what I'm reading around, in that case too Schrage in general is not correct, ie, for the constants proposed by Park & Miller it works fine only by chance. Can you people confirm?