c/numeric/math/log

@1-3@ Computes the natural (base e) logarithm of. @4@ Type-generic macro: If has type,  is called. Otherwise, if has integer type or the type,  is called. Otherwise, is called. If is complex or imaginary, then the macro invokes the corresponding complex function.

Return value
If no errors occur, the natural (base-e) logarithm of ($ln(arg)$ or $log e(arg)$) is returned.

If a domain error occurs, an implementation-defined value is returned (NaN where supported).

If a pole error occurs, huge_val,, or is returned.

Error handling
Errors are reported as specified in.

Domain error occurs if is less than zero.

Pole error may occur if is zero.

If the implementation supports IEEE floating-point arithmetic (IEC 60559),
 * If the argument is ±0, -∞ is returned and fe_divbyzero is raised.
 * If the argument is 1, +0 is returned
 * If the argument is negative, NaN is returned and fe_invalid is raised.
 * If the argument is +∞, +∞ is returned
 * If the argument is NaN, NaN is returned