Por que um +++++ b funciona?

int main ()
{
   int a = 5,b = 2;
   printf("%d",a+++++b);
   return 0;
}

Este código fornece o seguinte erro:

error: lvalue necessário como operando de incremento

Mas se eu colocar espaços por todaa++ + e++b, então funciona bem.

int main ()
{
   int a = 5,b = 2;
   printf("%d",a++ + ++b);
   return 0;
}

O que significa o erro no primeiro exemplo?

questionAnswers(8)

yourAnswerToTheQuestion