diff options
Diffstat (limited to 'config')
-rw-r--r-- | config/open-axiom.m4 | 10 | ||||
-rw-r--r-- | config/openaxiom-c-macros.h.in | 12 |
2 files changed, 12 insertions, 10 deletions
diff --git a/config/open-axiom.m4 b/config/open-axiom.m4 index da4dc75c..2218be2c 100644 --- a/config/open-axiom.m4 +++ b/config/open-axiom.m4 @@ -1054,8 +1054,9 @@ AC_COMPILE_IFELSE([AC_LANG_SOURCE([[int a = alignof(int);]])], [AC_COMPILE_IFELSE([AC_LANG_SOURCE([[int a = __alignof(int);]])], [oa_alignment="__alignof"], [AC_MSG_ERROR([C++ compiler does not support alignment query operator])])]) -AC_DEFINE_UNQUOTED([openaxiom_alignment],[$oa_alignment], - [Alignment query operator]) +if test -n $oa_alignment -a $oa_alignment != "alignof"; then + AC_DEFINE_UNQUOTED([alignof],[$oa_alignment],[Alignment query operator]) +fi AC_MSG_RESULT([$oa_alignment]) ]) @@ -1072,8 +1073,9 @@ AC_COMPILE_IFELSE([AC_LANG_SOURCE([[alignas(16) int a = 42;]])], [AC_COMPILE_IFELSE([AC_LANG_SOURCE([[__attribute__((__aligned__(16))) int a = 42;]])], [oa_alignas="__attribute__((__aligned__(N)))"], [AC_MSG_ERROR([C++ compiler does not support alignment specifier])])]) -AC_DEFINE_UNQUOTED([openaxiom_alignas(N)],[$oa_alignas], - [Alignment specifier operator]) +if test -n $oa_alignas -a $oa_alignas != "alignas"; then + AC_DEFINE_UNQUOTED([alignas(N)],[$oa_alignas],[Alignment specifier operator]) +fi AC_MSG_RESULT([$oa_alignas]) ]) diff --git a/config/openaxiom-c-macros.h.in b/config/openaxiom-c-macros.h.in index 03b93dbe..6a93a786 100644 --- a/config/openaxiom-c-macros.h.in +++ b/config/openaxiom-c-macros.h.in @@ -262,6 +262,12 @@ #define below would cause a syntax error. */ #undef _UINT8_T +/* Alignment specifier operator */ +#undef alignas + +/* Alignment query operator */ +#undef alignof + /* Define to `int' if <sys/types.h> doesn't define. */ #undef gid_t @@ -289,12 +295,6 @@ if such a type exists, and if the system does not define it. */ #undef intptr_t -/* Alignment specifier operator */ -#undef openaxiom_alignas - -/* Alignment query operator */ -#undef openaxiom_alignment - /* Define to `int' if <sys/types.h> doesn't define. */ #undef uid_t |