[libcxx-commits] [PATCH] D88301: [libc++] Clean up logic around aligned/sized allocation and deallocation

Zbigniew Sarbinowski via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Fri Sep 25 14:14:27 PDT 2020


zibi added a comment.

In D88301#2295423 <https://reviews.llvm.org/D88301#2295423>, @ldionne wrote:

> That macro is defined as:
>
>   #if !defined(_LIBCPP_HAS_NO_ALIGNED_ALLOCATION) && \
>       (defined(_LIBCPP_HAS_NO_LIBRARY_ALIGNED_ALLOCATION) || \
>       (!defined(__cpp_aligned_new) || __cpp_aligned_new < 201606))
>   #  define _LIBCPP_HAS_NO_ALIGNED_ALLOCATION
>   #endif
>
> What is `__cpp_aligned_new` set to on z/OS?

The `__cpp_aligned_new` is defined as 201616 on z/OS. However, z/OS will define `_LIBCPP_HAS_NO_LIBRARY_ALIGNED_ALLOCATION` explicitly and both macros `'_LIBCPP_HAS_NO_LIBRARY_ALIGNED_ALLOCATION` and `_LIBCPP_HAS_NO_ALIGNED_ALLOCATION` will be defined. That is one of the upcoming change or you can do it here as I suggested on line 948 in `__config`.



================
Comment at: libcxx/include/__config:948
     (!defined(__cpp_aligned_new) || __cpp_aligned_new < 201606))
 #  define _LIBCPP_HAS_NO_ALIGNED_ALLOCATION
 #endif
----------------
`#  define _LIBCPP_HAS_NO_ALIGNED_ALLOCATION
#elif defined(__MVS__)
#  define _LIBCPP_HAS_NO_LIBRARY_ALIGNED_ALLOCATION`



Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D88301/new/

https://reviews.llvm.org/D88301



More information about the libcxx-commits mailing list