The derivative $\frac{\mathrm d}{\mathrm dx} x^x=x^x\left(\ln x+1\right)$ is problematic for $x<0$ To take the derivative of $x ^ x$, we write
$$\dfrac {\mathrm d}{\mathrm dx} x^x=\dfrac {\mathrm d}{\mathrm dx} e^{\ln x^x}=\dfrac {\mathrm d}{\mathrm dx} e^{x\ln x}= e^{x\ln x}× \dfrac {\mathrm d}{\mathrm dx}(x\ln x)=x^x\left(\ln x+1\right)$$
Here is my problem:
If $x\in\mathbb{Z^-}$, then $x^x\in\mathbb {R}$. But, $\ln x \not\in\mathbb {R}.$
Because, $\ln x$ is defined only in the set of positive real numbers.
If, $x \not\in\mathbb {Z^{-}}$ and $x\in\mathbb{R^{-}}$, then $x^x\in\mathbb {C}$ and $\ln x \in\mathbb {C}.$
But, the problem occurs if $x\in\mathbb{Z^-}.$
So, $x^x=e^{x\ln x}$ doesn't hold for all real numbers. This makes the derivative result suspicious.
Where is the problem?

The differentiability of a function can only be found if it is continuous in an interval $(a,b)$.
$x^x$ is continuous only for $x > 0$. For $x<0$, the graph can only be drawn for some discrete points. Differentiability is not defined for this part of the graph.
$$\frac{\mathrm d (x^x)}{\mathrm{d}x}=x^x(\ln x+1)\quad \forall\quad x\in \mathbb{R}^+$$
