mirror of
git://sourceware.org/git/glibc.git
synced 2024-11-21 01:12:26 +08:00
e59c94fa0e
If a platform does not define "long-double-fcts = yes" in its Makefiles and it does define __NO_LONG_DOUBLE_MATH in its installed headers, it will currently create exported symbols for __finitel, __isinfl, and __isnanl that can't be reached from userspace by correct use of the finite(), isinf(), or isnan() macros in <math.h>. To avoid this situation, by default for such platforms we now no longer export these symbols, thus causing appropriate link-time errors. However, for platforms that previously exported these symbols, we continue to do so as compat symbols; this is enabled by adding LDBL_CLASSIFY_COMPAT to math_private.h for the platform. For tile, remove the now-unnecessary exports of those functions from libc and libm.
12 lines
269 B
C
12 lines
269 B
C
#ifndef ARM_MATH_PRIVATE_H
|
|
#define ARM_MATH_PRIVATE_H 1
|
|
|
|
/* Enable __finitel, __isinfl, and __isnanl for binary compatibility
|
|
when built without long double support. */
|
|
#define LDBL_CLASSIFY_COMPAT 1
|
|
|
|
#include "fenv_private.h"
|
|
#include_next <math_private.h>
|
|
|
|
#endif
|