¿INT_MIN% -1 produce un comportamiento indefinido?

gcc genera código flotante que elevaSIGFPE para el siguiente código:

#include <limits.h>
int x = -1;
int main()
{
    return INT_MIN % x;
}

Sin embargo, no puedo encontrar ninguna declaración en el estándar de que este código invoque un comportamiento indefinido o definido por la implementación. Por lo que puedo decir, es necesario que devuelva 0. ¿Es esto un error en gcc o me falta alguna excepción especial que hace el estándar?

Respuestas a la pregunta(5)

Su respuesta a la pregunta