diff options
author | Jonathan Wakely <jwakely@redhat.com> | 2021-03-23 13:08:32 +0000 |
---|---|---|
committer | Jonathan Wakely <jwakely@redhat.com> | 2021-03-23 15:00:43 +0000 |
commit | baef0cffb58be7f5d9aeac6313ea9d8becc017b1 (patch) | |
tree | 8943b72597aa8babe8b313b9313837ac7240b62e /gcc | |
parent | 831f9f768eb1fbf9a31d9a89591188b1487b6376 (diff) | |
download | gcc-baef0cffb58be7f5d9aeac6313ea9d8becc017b1.zip gcc-baef0cffb58be7f5d9aeac6313ea9d8becc017b1.tar.gz gcc-baef0cffb58be7f5d9aeac6313ea9d8becc017b1.tar.bz2 |
libstdc++: Disable "ALT128" long double support for Clang
Clang does not currently support the __ibm128 type [1] and only supports
the __ieee128 type in the unreleased 12.0.0 version [2]. That means it
is not possible to provide support for -mabi=ieeelongdouble with Clang
in an ABI compatible way (as we do for GCC by defining new facets and
other types in the __gnu_cxx_ldbl128 namespace).
By preventing the definition of _GLIBCXX_LONG_DOUBLE_ALT128_COMPAT when
compiling with Clang, all uses of __ibm128 and __ieee128 types will be
disabled. This can be revisited in future when Clang supports the types
(and provides a way to detect that support using the preprocessor).
[1] https://reviews.llvm.org/D93377
[2] https://reviews.llvm.org/D97846
libstdc++-v3/ChangeLog:
* include/bits/c++config (_GLIBCXX_LONG_DOUBLE_ALT128_COMPAT):
Do not define when compiling with Clang.
Diffstat (limited to 'gcc')
0 files changed, 0 insertions, 0 deletions