Use unconditionally the correct macros isnan, isinf.
Remove redudant macros from the build system.
Changes related to this commit:
- Clean up #if mess.
- Use unconditionally the correct macros isnan, isinf.
- Remove redudant macros from the build system.
There are non-standard "functions" names used in kjs/operations.cpp: _isnan, _isinf, _finite.
The isnan, isinf functions are really macros accorded to the C99 standard.
It is possible to let (have again) isnan and isinf in the build system to report if these functions are supported or not per-system basis, it could be redundant according to the conclusion:
"Regardless of whether they're macros or functions (the standard requires macros and they will be macros in any system from the past 20 years) even if they were functions we use them exactly the same way, by including math.h and using them by name."
Extra notes:
The PR assumes that we will be in the safe side (without checking isnan, isinf from the build system).
The previous defined macros from the build system is not relevant to the relevant kjs/operations.cpp file - according to this PR.
Summary:
- There are non-standard "functions" names used in kjs/operations.cpp: _isnan, _isinf, _finite.
- The isnan, isinf functions are really macros accorded to the C99 standard.
- It is possible to let (have again) isnan and isinf in the build system to report if these functions are supported or not per-system basis, it could be redundant according to the conclusion:
"Regardless of whether they're macros or functions (the standard requires macros and they will be macros in any system from the past 20 years) even if they were functions we use them exactly the same way, by including math.h and using them by name."
Extra notes:
- The PR assumes that we will be in the safe side (without checking isnan, isinf from the build system).
- The previous defined macros from the build system is not relevant to the relevant kjs/operations.cpp file - according to this PR.
Changes related to this commit:
Clean up #if mess.
Use unconditionally the correct macros isnan, isinf.
Remove redudant macros from the build system.
Summary:
There are non-standard "functions" names used in kjs/operations.cpp: _isnan, _isinf, _finite.
The isnan, isinf functions are really macros accorded to the C99 standard.
It is possible to let (have again) isnan and isinf in the build system to report if these functions are supported or not per-system basis, it could be redundant according to the conclusion:
"Regardless of whether they're macros or functions (the standard requires macros and they will be macros in any system from the past 20 years) even if they were functions we use them exactly the same way, by including math.h and using them by name."
Extra notes:
The PR assumes that we will be in the safe side (without checking isnan, isinf from the build system).
The previous defined macros from the build system is not relevant to the relevant kjs/operations.cpp file - according to this PR.
It looks good. Tested on Debian and FreeBSD – everything seems to be fine.
8ae17a5d9d
.