Sujet : Re: Calling conventions (particularly 32-bit ARM)
De : Keith.S.Thompson+u (at) *nospam* gmail.com (Keith Thompson)
Groupes : comp.archDate : 14. Jan 2025, 09:14:09
Autres entêtes
Organisation : None to speak of
Message-ID : <874j21ak32.fsf@nosuchdomain.example.com>
References : 1 2 3 4 5 6 7 8 9 10 11 12
User-Agent : Gnus/5.13 (Gnus v5.13)
scott@slp53.sl.home (Scott Lurndal) writes:
mitchalsup@aol.com (MitchAlsup1) writes:
On Mon, 13 Jan 2025 18:02:10 +0000, Thomas Koenig wrote:
>
MitchAlsup1 <mitchalsup@aol.com> schrieb:
>
errno is an atrocity all by itself; single handedly preventing
direct use of SIN(), COS(), TAN(), ATAN(), exp(), ln(), pow()
as instructions.
>
Fortunately, the C standard does not require errno to be set
for these functions. Apple, for example, does not do so.
>
Nor will I.
>
POSIX does, however, require errno to be set conditionally
based on an application global variable 'math_errhandling'.
math_errhandling is specified by ISO C, starting with the 1999 edition
of the standard.
The value of math_errhandling is determined by the implementation, not
by the application. "The value of math_errhandling is constant for the
duration of the program." (A compiler could provide an option to set
the value; I don't know whether any do so.)
https://www.iso-9899.info/n1570.html#7.12-- Keith Thompson (The_Other_Keith) Keith.S.Thompson+u@gmail.comvoid Void(void) { Void(); } /* The recursive call of the void */