L'inline non c'entra nulla ... il problema e' quel

a++

che usato con la define, viene tradotto

((a++)*(a++))


Capito il problema?