This function is called by the __atomic_is_lock_free builtin if the value
cannot be resolved to true at compile time. Lack of this function is
causing the non-lockfree atomics tests in libc++ to not be run (see D91911)
This function is also added in D85044, but that also add support for using
lock-free atomics in more cases, whereas this just adds __atomic_is_lock_free
for the current state of atomic.c.
Why should size 0 never be lock free?
(I would've thought they'd always be lock free given no operation is needed )