c/numeric/math/atan2

@1-6@ Computes the arc tangent of using the signs of arguments to determine the correct quadrant. @7@ Type-generic macro: If any argument has type,  is called. Otherwise, if any argument has integer type or has type,  is called. Otherwise,  is called.

Return value
If no errors occur, the arc tangent of ($arctan$) in the range $[-&pi; ; +&pi;]$ radians, is returned.

If a domain error occurs, an implementation-defined value is returned.

If a range error occurs due to underflow, the correct result (after rounding) is returned.

Error handling
Errors are reported as specified in.

Domain error may occur if and  are both zero.

If the implementation supports IEEE floating-point arithmetic (IEC 60559):
 * If and  are both zero, domain error does not occur;
 * If and  are both zero, range error does not occur either;
 * If is zero, pole error does not occur;
 * If is  and  is negative or,  is returned;
 * If is  and  is positive or,  is returned;
 * If is  and  is finite,  is returned;
 * If is  and  is,  is returned;
 * If is  and  is,  is returned;
 * If is  and  is negative,  is returned;
 * If is  and  is positive,  is returned;
 * If is  and  is finite and positive,  is returned;
 * If is  and  is finite and negative,  is returned;
 * If is  and  is finite and positive,  is returned;
 * If is  and  is finite and negative,  is returned;
 * If either is NaN or  is NaN, NaN is returned.