| From 6e169bb5fadb73b4dd300b28e9cae1e1772855e8 Mon Sep 17 00:00:00 2001 |
| From: Khem Raj <raj.khem@gmail.com> |
| Date: Sun, 15 Jan 2023 02:05:23 -0800 |
| Subject: [PATCH] Use __alignof__ with clang. |
| |
| For clang versions < 8, use the same |
| workaround as for GCC versions < 4.9. |
| |
| Backport couple of gnulib patches squashed |
| |
| [1] https://git.savannah.gnu.org/cgit/gnulib.git/commit/lib/stdalign.in.h?id=57caf9541d98314102a55dd1cd0b8dc2be747471 |
| [2] https://git.savannah.gnu.org/cgit/gnulib.git/commit/lib/stdalign.in.h?id=2af490a4c4ce85567296e27be6a9528964ca851e |
| |
| Upstream-Status: Backport [https://git.savannah.gnu.org/cgit/gnulib.git/commit/lib/stdalign.in.h?id=57caf9541d98314102a55dd1cd0b8dc2be747471] |
| |
| Signed-off-by: Khem Raj <raj.khem@gmail.com> |
| --- |
| gnu/stdalign.in.h | 7 +++++-- |
| 1 file changed, 5 insertions(+), 2 deletions(-) |
| |
| diff --git a/gnu/stdalign.in.h b/gnu/stdalign.in.h |
| index 5f56eee..e6e6a65 100644 |
| --- a/gnu/stdalign.in.h |
| +++ b/gnu/stdalign.in.h |
| @@ -53,9 +53,12 @@ |
| #undef _Alignof |
| |
| /* GCC releases before GCC 4.9 had a bug in _Alignof. See GCC bug 52023 |
| - <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52023>. */ |
| + <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=52023>. |
| + clang versions < 8.0.0 have the same bug. */ |
| #if (!defined __STDC_VERSION__ || __STDC_VERSION__ < 201112 \ |
| - || (defined __GNUC__ && __GNUC__ < 4 + (__GNUC_MINOR__ < 9))) |
| + || (defined __GNUC__ && __GNUC__ < 4 + (__GNUC_MINOR__ < 9) \ |
| + && !defined __clang__) \ |
| + || (defined __clang__ && __clang_major__ < 8)) |
| # ifdef __cplusplus |
| # if 201103 <= __cplusplus |
| # define _Alignof(type) alignof (type) |
| -- |
| 2.39.0 |
| |