This is the mail archive of the
glibc-bugs@sourceware.org
mailing list for the glibc project.
[Bug math/22296] glibc 2.26: signbit build issue with Gcc 5.5.0 on x86_64
- From: "cvs-commit at gcc dot gnu.org" <sourceware-bugzilla at sourceware dot org>
- To: glibc-bugs at sourceware dot org
- Date: Tue, 17 Oct 2017 14:13:10 +0000
- Subject: [Bug math/22296] glibc 2.26: signbit build issue with Gcc 5.5.0 on x86_64
- Auto-submitted: auto-generated
- References: <bug-22296-131@http.sourceware.org/bugzilla/>
https://sourceware.org/bugzilla/show_bug.cgi?id=22296
--- Comment #2 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot gnu.org> ---
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".
The branch, master has been updated
via 386e1c26ac473d6863133ab9cbe3bbda16c15816 (commit)
from 3d265601358974c9be8264e53dadd8f9aea5690c (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=386e1c26ac473d6863133ab9cbe3bbda16c15816
commit 386e1c26ac473d6863133ab9cbe3bbda16c15816
Author: Romain Naour <romain.naour@gmail.com>
Date: Mon Oct 16 23:21:56 2017 +0200
Let signbit use the builtin in C++ mode with gcc < 6.x (bug 22296)
When using gcc < 6.x, signbit does not use the type-generic
__builtin_signbit builtin, instead it uses __MATH_TG.
However, when library support for float128 is available, __MATH_TG uses
__builtin_types_compatible_p, which is not available in C++ mode.
On the other hand, libstdc++ undefines (in cmath) many macros from
math.h, including signbit, so that it can provide its own functions.
However, during its configure tests, libstdc++ just tests for the
availability of the macros (it does not undefine them, nor does it
provide its own functions).
Finally, libstdc++ configure tests include math.h and get the definition
of signbit that uses __MATH_TG (and __builtin_types_compatible_p).
Since libstdc++ does not undefine the macros during its configure
tests, they fail.
This patch lets signbit use the builtin in C++ mode when gcc < 6.x is
used. This allows the configure test in libstdc++ to work.
Tested for x86_64.
[BZ #22296]
* math/math.h: Let signbit use the builtin in C++ mode with gcc
< 6.x
Cc: Gabriel F. T. Gomes <gftg@linux.vnet.ibm.com>
Cc: Joseph Myers <joseph@codesourcery.com>
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 6 ++++++
math/math.h | 9 +++++++++
2 files changed, 15 insertions(+), 0 deletions(-)
--
You are receiving this mail because:
You are on the CC list for the bug.