Hi Roberto,
Reading the thread "Autoconf manual's coverage of signed integer overflow & portability" I was horrified to discover about GCC's miscompilation of the remainder expression that causes INT_MIN % -1 to cause a SIGFPE on CPUs of the i386 family. Are there plans to fix this bug (which, to me, looks quite serious)?
If I understand correctly your problem, I was also battling with it a few days ago, and found 5.6/4 rather obscure, i.e., I'm not sure to understand what we can reasonably expect from the remainder operator when one or both operands are negative... Then, while fixing libstdc++/30416 I decided to be super-safe, that is only compute remainders of nonnegative operands... I would like to understand the issue better, however...
Paolo.