[Python-checkins] cpython: Issue #22038, configure: HAVE_STD_ATOMIC now also check that "atomic_int" and

victor.stinner python-checkins at python.org
Wed Jan 14 16:04:35 CET 2015


https://hg.python.org/cpython/rev/dacc944641b1
changeset: 94138:dacc944641b1
parent: 94136:c917ba25c007
user: Victor Stinner <victor.stinner at gmail.com>
date: Wed Jan 14 16:01:46 2015 +0100
summary:
 Issue #22038, configure: HAVE_STD_ATOMIC now also check that "atomic_int" and
"_Atomic void*" types work. Change needed on FreeBSD 10 where stdatomic.h is
available but the compiler fails on "_Atomic void*" with "_Atomic cannot be
applied to incomplete type 'void'".
files:
 configure | 3 ++-
 configure.ac | 6 ++++--
 pyconfig.h.in | 2 +-
 3 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/configure b/configure
--- a/configure
+++ b/configure
@@ -15711,7 +15711,8 @@
 
 
 #include <stdatomic.h>
- _Atomic int value = ATOMIC_VAR_INIT(1);
+ atomic_int value = ATOMIC_VAR_INIT(1);
+ _Atomic void *py_atomic_address = (void*) &value;
 int main() {
 int loaded_value = atomic_load(&value);
 return 0;
diff --git a/configure.ac b/configure.ac
--- a/configure.ac
+++ b/configure.ac
@@ -4890,7 +4890,8 @@
 [
 AC_LANG_SOURCE([[
 #include <stdatomic.h>
- _Atomic int value = ATOMIC_VAR_INIT(1);
+ atomic_int value = ATOMIC_VAR_INIT(1);
+ _Atomic void *py_atomic_address = (void*) &value;
 int main() {
 int loaded_value = atomic_load(&value);
 return 0;
@@ -4901,7 +4902,8 @@
 AC_MSG_RESULT($have_stdatomic_h)
 
 if test "$have_stdatomic_h" = yes; then
- AC_DEFINE(HAVE_STD_ATOMIC, 1, [Has stdatomic.h])
+ AC_DEFINE(HAVE_STD_ATOMIC, 1,
+ [Has stdatomic.h, atomic_int and _Atomic void* types work])
 fi
 
 # Check for GCC >= 4.7 __atomic builtins
diff --git a/pyconfig.h.in b/pyconfig.h.in
--- a/pyconfig.h.in
+++ b/pyconfig.h.in
@@ -880,7 +880,7 @@
 /* Define to 1 if you have the <stdlib.h> header file. */
 #undef HAVE_STDLIB_H
 
-/* Has stdatomic.h */
+/* Has stdatomic.h, atomic_int and _Atomic void* types work */
 #undef HAVE_STD_ATOMIC
 
 /* Define to 1 if you have the `strdup' function. */
-- 
Repository URL: https://hg.python.org/cpython


More information about the Python-checkins mailing list

AltStyle によって変換されたページ (->オリジナル) /