You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
libcxx/test/std/utilities/meta
Eric Fiselier 272871b658 Move internal usages of `alignof`/`__alignof` to use `_LIBCPP_ALIGNOF`.
Summary:
Starting in Clang 8.0 and GCC 8.0, `alignof` and `__alignof` return different values in same cases. Specifically `alignof` and `_Alignof` return the minimum alignment for a type, where as `__alignof` returns the preferred alignment. libc++ currently uses `__alignof` but means to use `alignof`. See  llvm.org/PR39713

This patch introduces the macro `_LIBCPP_ALIGNOF` so we can control which spelling gets used.

This patch does not introduce any ABI guard to provide the old behavior with newer compilers. However, if we decide that is needed, this patch makes it trivial to implement.

I think we should commit this change immediately, and decide what we want to do about the ABI afterwards. 

Reviewers: ldionne, EricWF

Reviewed By: ldionne, EricWF

Subscribers: jyknight, christof, libcxx-commits

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

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@351289 91177308-0d34-0410-b5e6-96231b3b80d8
6 years ago
..
meta.help Cleanup _LIBCPP_HAS_NO_<c++11-feature> in the utilities library 8 years ago
meta.logical Remove trailing whitespace in test suite. Approved by Marshall Clow. 9 years ago
meta.rel [libcxx] P0604, invoke_result and is_invocable 7 years ago
meta.rqmts Move test into test/std subdirectory. 10 years ago
meta.trans Move internal usages of `alignof`/`__alignof` to use `_LIBCPP_ALIGNOF`. 6 years ago
meta.type.synop Get tests compiling with -Wunused-local-typedef 6 years ago
meta.unary Second part of P0482 - char8_t. Reviewed as https://reviews.llvm.org/D55308 6 years ago
meta.unary.prop.query Move internal usages of `alignof`/`__alignof` to use `_LIBCPP_ALIGNOF`. 6 years ago