cpp/atomic/atomic is lock free

@1@ Determines if the atomic object pointed to by is implemented lock-free, as if by calling. In any given program execution, the result of the lock-free query is the same for all atomic objects of the same type.

@2,3@ Expands to an integer constant expression with value
 * for the built-in atomic types that are never lock-free
 * for the built-in atomic types that are sometimes lock-free
 * for the built-in atomic types that are always lock-free.

Return value
if is a lock-free atomic,  otherwise.