Issue of the Standard # S0436


The declarations of the functions from fenv.h in the POSIX do not satisfy the C99 standard.

Detailed Description

The following functions in C99 return ‘void’:
void feclearexcept(int excepts);
void fegetexceptflag(fexcept_t *flagp, int excepts);
void feraiseexcept(int excepts);
void fesetexceptflag(const fexcept_t *flagp, int excepts);
void fegetenv(fenv_t *envp);
void fesetenv(const fenv_t *envp);
void feupdateenv(const fenv_t *envp);

However, the above functions in POSIX return ‘int’ in spite of declaration of fully alignment with ISO C (1999).

Problem location(s) in the standard

The Open Group Base Specifications Issue 6 IEEE Std 1003.1, 2004 Edition (SUS 3.0), Base Definitions, 13. Headers, <fenv.h>.