Let a function $f(z)$ defined for all $z\in\mathbb{C}$ (without any further restrictions) satisfy the equation: $$ f(f(z))=f(z-c)+c, $$ where $c\ne0$ is a constant. It can be easily demonstrated that the only analytic function satisfying the equation is $f(z)=z$ and I have strong (but possibly wrong) impression that it is in fact the only possible solution of the equation. Can it be proved or disproved? In the latter case what is the general form of solution?
I never dealt with functional equations, so any hint is appreciated.