From: Bruno Haible Date: Fri, 29 Mar 2024 13:35:01 +0000 (+0100) Subject: attribute: Work around compiler bug of Oracle cc 12.6. X-Git-Url: https://gitweb.git.savannah.gnu.org/gitweb/?a=commitdiff_plain;h=733bd950fec449ea6064af5c7fb20700a50d08d5;p=gnulib.git attribute: Work around compiler bug of Oracle cc 12.6. * m4/gnulib-common.m4 (gl_COMMON_BODY): Expand _GL_ATTRIBUTE_PACKED to empty on SunPRO C. --- diff --git a/ChangeLog b/ChangeLog index e3db00a926..e18c9ba506 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2024-03-29 Bruno Haible + + attribute: Work around compiler bug of Oracle cc 12.6. + * m4/gnulib-common.m4 (gl_COMMON_BODY): Expand _GL_ATTRIBUTE_PACKED to + empty on SunPRO C. + 2024-03-28 Bruno Haible fenv-exceptions-state-c99: Fix test failures with Oracle cc 12.6. diff --git a/m4/gnulib-common.m4 b/m4/gnulib-common.m4 index bba6d6001f..c9a8a7d7a6 100644 --- a/m4/gnulib-common.m4 +++ b/m4/gnulib-common.m4 @@ -1,4 +1,4 @@ -# gnulib-common.m4 serial 89.2 +# gnulib-common.m4 serial 89.3 dnl Copyright (C) 2007-2024 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -504,8 +504,10 @@ AC_DEFUN([gl_COMMON_BODY], [ minimizing the memory required. */ /* Applies to: struct members, struct, union, in C++ also: class. */ +/* Oracle Studio 12.6 miscompiles code with __attribute__ ((__packed__)) despite + __has_attribute OK. */ #ifndef _GL_ATTRIBUTE_PACKED -# if _GL_HAS_ATTRIBUTE (packed) +# if _GL_HAS_ATTRIBUTE (packed) && !defined __SUNPRO_C # define _GL_ATTRIBUTE_PACKED __attribute__ ((__packed__)) # else # define _GL_ATTRIBUTE_PACKED