Return the square root of the specified x.
Special value handling: * If x is NaN, NaN is returned. * If x is less than -0, NaN is returned and the value of the macro EDOM is stored into errno. * If x is +/-infinity or +/-0, it is returned unmodified.