]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
Fix preprocessor checks for Clang builtins
authorJonathan Wakely <redi@gcc.gnu.org>
Fri, 26 Jul 2019 13:36:36 +0000 (14:36 +0100)
committerJonathan Wakely <redi@gcc.gnu.org>
Fri, 26 Jul 2019 13:36:36 +0000 (14:36 +0100)
Clang seems to define built-ins that start with "__builtin_" as
non-keywords, which means that we need to use __has_builtin to detect
them, not __is_identifier. The built-ins that don't start with
"__builtin_" are keywords, and can only be detected using
__is_identifier and not by __has_builtin.

Backport from mainline
2019-07-02  Jonathan Wakely  <jwakely@redhat.com>

* include/bits/c++config (_GLIBCXX_HAVE_BUILTIN_LAUNDER)
(_GLIBCXX_HAVE_BUILTIN_IS_CONSTANT_EVALUATED): Use __has_builtin
instead of __is_identifier to detect Clang support.

From-SVN: r273832

libstdc++-v3/ChangeLog

index 1c6e5592bf45fba6d109167590c6599a16d36db5..d60df1790cdc54a1a62f585ae6fa2e448a481a6b 100644 (file)
@@ -1,3 +1,12 @@
+2019-07-26  Jonathan Wakely  <jwakely@redhat.com>
+
+       Backport from mainline
+       2019-07-02  Jonathan Wakely  <jwakely@redhat.com>
+
+       * include/bits/c++config (_GLIBCXX_HAVE_BUILTIN_LAUNDER)
+       (_GLIBCXX_HAVE_BUILTIN_IS_CONSTANT_EVALUATED): Use __has_builtin
+       instead of __is_identifier to detect Clang support.
+
 2019-07-26  Jonathan Wakely  <jwakely@redhat.com>
 
        Backport from mainline