[all-commits] [llvm/llvm-project] 2040fd: [libc++] Prefer __has_builtin for detecting compil...

philnik777 via All-commits all-commits at lists.llvm.org
Wed Jul 6 04:34:04 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 2040fde9097ae7753531c9c58332a933cbaaa43c
      https://github.com/llvm/llvm-project/commit/2040fde9097ae7753531c9c58332a933cbaaa43c
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2022-07-06 (Wed, 06 Jul 2022)

  Changed paths:
    M libcxx/include/__type_traits/extent.h
    M libcxx/include/__type_traits/has_virtual_destructor.h
    M libcxx/include/__type_traits/is_array.h
    M libcxx/include/__type_traits/is_assignable.h
    M libcxx/include/__type_traits/is_compound.h
    M libcxx/include/__type_traits/is_const.h
    M libcxx/include/__type_traits/is_convertible.h
    M libcxx/include/__type_traits/is_destructible.h
    M libcxx/include/__type_traits/is_function.h
    M libcxx/include/__type_traits/is_fundamental.h
    M libcxx/include/__type_traits/is_integral.h
    M libcxx/include/__type_traits/is_member_function_pointer.h
    M libcxx/include/__type_traits/is_member_object_pointer.h
    M libcxx/include/__type_traits/is_member_pointer.h
    M libcxx/include/__type_traits/is_nothrow_assignable.h
    M libcxx/include/__type_traits/is_nothrow_constructible.h
    M libcxx/include/__type_traits/is_object.h
    M libcxx/include/__type_traits/is_pod.h
    M libcxx/include/__type_traits/is_pointer.h
    M libcxx/include/__type_traits/is_reference.h
    M libcxx/include/__type_traits/is_scalar.h
    M libcxx/include/__type_traits/is_signed.h
    M libcxx/include/__type_traits/is_standard_layout.h
    M libcxx/include/__type_traits/is_trivial.h
    M libcxx/include/__type_traits/is_trivially_destructible.h
    M libcxx/include/__type_traits/is_unsigned.h
    M libcxx/include/__type_traits/is_void.h
    M libcxx/include/__type_traits/is_volatile.h

  Log Message:
  -----------
  [libc++] Prefer __has_builtin for detecting compiler-provided type_traits

Both clang and GCC support using `__has_builtin` for detecting compiler-provided type_traits. Use it instead of `__has_keyword` or `__has_feature` to remove special-casing for GCC-provided builtins

Reviewed By: ldionne, #libc

Spies: libcxx-commits

Differential Revision: https://reviews.llvm.org/D129056




More information about the All-commits mailing list