]> git.eshelyaron.com Git - emacs.git/commitdiff
Port alignas definition to C23
authorPaul Eggert <eggert@cs.ucla.edu>
Tue, 13 Sep 2022 17:41:34 +0000 (12:41 -0500)
committerPaul Eggert <eggert@cs.ucla.edu>
Tue, 13 Sep 2022 17:42:31 +0000 (12:42 -0500)
* src/lisp.h (alignas): C23 is removing the __alignas_is_defined
macro, so do not rely on it. Instead, do not define alignas if C23
or later, or if C++11 or later.

src/lisp.h

index 2f73ba4c617d257b408b95869acb49e25a49c3f3..9710dbef8d2e9f2625e67ffcc6447de6c0b20634 100644 (file)
@@ -245,7 +245,8 @@ DEFINE_GDB_SYMBOL_BEGIN (EMACS_INT, VALMASK)
 DEFINE_GDB_SYMBOL_END (VALMASK)
 
 /* Ignore 'alignas' on compilers lacking it.  */
-#if !defined alignas && !defined __alignas_is_defined
+#if (!defined alignas && !defined __alignas_is_defined \
+     && __STDC_VERSION__ < 202311 && __cplusplus < 201103)
 # define alignas(a)
 #endif