The implementation shall provide the functions and function template specializations identified as “arithmetic operations on atomic types” in [atomics.syn].
In the declarations of these functions and function template specializations, the name integral refers to an integral type and the name atomic-integral refers to either atomic<integral> or to a named base class for integral from Table [tab:atomics.integral] or inferred from Table [tab:atomics.typedefs].