O código que nunca será executado invoca um comportamento indefinido?

O código que invoca o comportamento indefinido (neste exemplo, divisão por zero) nunca será executado, o comportamento do programa ainda é indefinido?

int main(void)
{
    int i;
    if(0)
    {
        i = 1/0;
    }
    return 0;
}

Eu acho que ainda é um comportamento indefinido, mas não consigo encontrar nenhuma evidência no padrão para me apoiar ou me negar.

Então, alguma ideia?

questionAnswers(9)

yourAnswerToTheQuestion