On Tue, 2018-02-27 at 13:04 +0000, Szabolcs Nagy wrote: > the solutions is to add a language extension
I think this only needs a library interface, at least when we're just considering the __atomic builtins. On the C/C++ level, it might amount to just another atomic type, which only has a CAS however; this could be probably modelled entirely through default atomics (not implemented though), and so wouldn't need a language or memory model extension.