"report a domain error" in [sf.cmath]/1 is underspecified
Casey Carter

Created on 2018-02-17.00:00:00, last changed 2018-06-19.05:49:11.


Date: 2018-06-18.00:00:00

[ 2018-06-18 after reflector discussion ]

Priority set to 3

Date: 2018-02-17.00:00:00

[sf.cmath]/1 uses the phrase "report a domain error" (emphasis mine):

If any argument value to any of the functions specified in this subclause is a NaN (Not a Number), the function shall return a NaN but it shall not report a domain error. Otherwise, the function shall report a domain error for just those argument values for which:

  • the function description's Returns: clause explicitly specifies a domain and those argument values fall outside the specified domain, or

  • the corresponding mathematical function value has a nonzero imaginary component, or

  • the corresponding mathematical function is not mathematically defined.

The behavior this phrase is attempting to convey is unclear. A quick search through the text of the standard for "domain error" finds only the domain_error exception type defined in [domain.error]. Is the intent of "report a domain error" that the special math functions throw an exception of type domain_error, or is it that they behave as specified in C11 7.12.1 "Treatment of error conditions" para 2 which defines the term "domain error"?

Date User Action Args
2018-06-19 05:49:11adminsetmessages: + msg9929
2018-02-17 00:00:00admincreate