2017-07-10 5:20 GMT-06:00 Piotr Caban piotr.caban@gmail.com:
On 07/10/17 06:55, Alex Henrie wrote:
asinh is part of C89, so it is guaranteed to be present.
Are you sure about it? As far as I know it's part of C99. The manual for asinh looks strange (it says that it conforms to C89 and gives test macro that checks for never standards).
I just looked, and I don't see it either. I also tried compiling a small program with asinh, and it would not compile with `gcc -std=c89`. So I think the man page must be mistaken.
2017-07-10 7:06 GMT-06:00 Alexandre Julliard julliard@winehq.org:
In general we don't care about the standards. Saying "asinh is in C89 so it's guaranteed to be available" doesn't make sense, nothing is guaranteed. There may or may not be a system out there that doesn't have it, no matter what the standards say.
So in principle we add checks as we find systems that require them, and we don't remove them because there's no easy way to check that they aren't still needed somewhere.
If we say that C89 (or more realistically, gnu89) is the minimum requirement for compiling Wine, it becomes much easier to decide when to add (or remove) feature test macros. I'd actually like to add checks around several other non-C89 functions that we use in math.c. But the decision is up to you.
Let's skip over the trigonometric functions for now; the other patches will still apply cleanly without them.
-Alex