atomic_init

fnvoid atomic_init(A, C)(out shared(A) obj, C desired) @trusted

Initializes an atomic variable, the destination should not have any expression associated with it prior to this call.

We use an out parameter instead of a pointer for destination in an attempt to communicate to the compiler that it initializers.