Comportamento indefinido no uso repetido do operador prefix ++

Eu li issoresponda sobre comportamento indefinido, onde vi a seguinte declaração:

++++++i;     // UB, parsed as (++(++(++i)))

Não acho que seja um comportamento indefinido. Eu tenho uma dúvida, é realmente UB em C ++? Se sim, então como?

Também fiz programa e compilei usandog++ prog.cpp -Wall -Wextra -std=gnu++1z -pedantic comando, está funcionando bem sem nenhum aviso. É dar uma saída esperada.

#include <iostream>
using namespace std;

int main()
{
    int i = 0;
    cout<<++++++i<<endl;
}

questionAnswers(2)

yourAnswerToTheQuestion