Closed lorentey closed 1 year ago
I omitted this because I didn't expect it would be needed, but I've found myself reaching for it surprisingly often over the years.
protocol AtomicStorage { ... @_semantics("atomics.requires_constant_orderings") static func atomicWeakCompareExchange( expected: Value, desired: __owned Value, at pointer: UnsafeMutablePointer<Self>, ordering: AtomicUpdateOrdering ) -> (exchanged: Bool, original: Value) }
This can ~trivially forward to the existing requirement by default, but we'll want actual implementations anyway.
I omitted this because I didn't expect it would be needed, but I've found myself reaching for it surprisingly often over the years.
This can ~trivially forward to the existing requirement by default, but we'll want actual implementations anyway.