static inline void *
_Py_atomic_load_ptr(const void *obj)
-{ return (void *)__atomic_load_n((void **)obj, __ATOMIC_SEQ_CST); }
+{ return (void *)__atomic_load_n((void * const *)obj, __ATOMIC_SEQ_CST); }
// --- _Py_atomic_load_relaxed -----------------------------------------------
static inline void *
_Py_atomic_load_ptr_relaxed(const void *obj)
-{ return (void *)__atomic_load_n((const void **)obj, __ATOMIC_RELAXED); }
+{ return (void *)__atomic_load_n((void * const *)obj, __ATOMIC_RELAXED); }
static inline unsigned long long
_Py_atomic_load_ullong_relaxed(const unsigned long long *obj)
static inline void *
_Py_atomic_load_ptr_acquire(const void *obj)
-{ return (void *)__atomic_load_n((void **)obj, __ATOMIC_ACQUIRE); }
+{ return (void *)__atomic_load_n((void * const *)obj, __ATOMIC_ACQUIRE); }
static inline uintptr_t
_Py_atomic_load_uintptr_acquire(const uintptr_t *obj)
-{ return (uintptr_t)__atomic_load_n((uintptr_t *)obj, __ATOMIC_ACQUIRE); }
+{ return (uintptr_t)__atomic_load_n(obj, __ATOMIC_ACQUIRE); }
static inline void
_Py_atomic_store_ptr_release(void *obj, void *value)