From 72922da37967a7501be73a3dd2d209276bc4b162 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Sat, 18 Mar 2017 22:35:02 -0700 Subject: [PATCH] stdalign: restore previous behavior for HP-UX IA64 See Bruno Haible's email in: http://lists.gnu.org/archive/html/bug-gnulib/2017-03/msg00066.html which cites p 150 of a manual saying that 'aligned' works on Itanium. * lib/stdalign.in.h (_Alignas): Assume the '061200' applies to Itanium, not to PA-RISC. * m4/stdalign.m4 (gl_STDALIGN_H): Adjust to match stdalign.in.h. --- ChangeLog | 10 ++++++++++ lib/stdalign.in.h | 2 +- m4/stdalign.m4 | 4 ++-- 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index b0529b5..396b0b8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,13 @@ +2017-03-18 Paul Eggert + + stdalign: restore previous behavior for HP-UX IA64 + See Bruno Haible's email in: + http://lists.gnu.org/archive/html/bug-gnulib/2017-03/msg00066.html + which cites p 150 of a manual saying that 'aligned' works on Itanium. + * lib/stdalign.in.h (_Alignas): + Assume the '061200' applies to Itanium, not to PA-RISC. + * m4/stdalign.m4 (gl_STDALIGN_H): Adjust to match stdalign.in.h. + 2017-03-17 Bruno Haible stat-time, timespec: Support use of the header files in C++ mode. diff --git a/lib/stdalign.in.h b/lib/stdalign.in.h index f6f4190..1b6d8cb 100644 --- a/lib/stdalign.in.h +++ b/lib/stdalign.in.h @@ -103,7 +103,7 @@ # elif ((defined __APPLE__ && defined __MACH__ \ ? 4 < __GNUC__ + (1 <= __GNUC_MINOR__) \ : __GNUC__) \ - || 061200 <= __HP_aCC \ + || (__ia64 && (061200 <= __HP_cc || 061200 <= __HP_aCC)) \ || __ICC || 0x590 <= __SUNPRO_C || 0x0600 <= __xlC__) # define _Alignas(a) __attribute__ ((__aligned__ (a))) # elif 1300 <= _MSC_VER diff --git a/m4/stdalign.m4 b/m4/stdalign.m4 index 5c15ef0..a7572a3 100644 --- a/m4/stdalign.m4 +++ b/m4/stdalign.m4 @@ -35,8 +35,8 @@ AC_DEFUN([gl_STDALIGN_H], || (defined __APPLE__ && defined __MACH__ \ ? 4 < __GNUC__ + (1 <= __GNUC_MINOR__) \ : __GNUC__) \ - || __HP_aCC || __IBMC__ || __IBMCPP__ \ - || __ICC || 0x5110 <= __SUNPRO_C \ + || (__ia64 && (061200 <= __HP_cc || 061200 <= __HP_aCC)) \ + || __ICC || 0x590 <= __SUNPRO_C || 0x0600 <= __xlC__ \ || 1300 <= _MSC_VER) struct alignas_test { char c; char alignas (8) alignas_8; }; char test_alignas[offsetof (struct alignas_test, alignas_8) == 8 -- 2.7.4