__atomic_typeof_unqual
union { __atomic_typeof_unqual(*(p)) __al_val; char __al_buf[1]; } v; \
const __atomic_typeof_unqual(*(p)) v = *(p)
__atomic_typeof_unqual(*(p)) __as_val = (v); \
__atomic_typeof_unqual(*(p)) __as_val = (v); \
const __atomic_typeof_unqual(*(p)) __al_val = atomic_load_relaxed(p); \