www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 20105] New: core.atomic 'cas' function is incomplete

https://issues.dlang.org/show_bug.cgi?id=20105

          Issue ID: 20105
           Summary: core.atomic 'cas' function is incomplete
           Product: D
           Version: D2
          Hardware: All
                OS: All
            Status: NEW
          Severity: enhancement
          Priority: P1
         Component: druntime
          Assignee: nobody puremagic.com
          Reporter: turkeyman gmail.com

core.atomic cas is incomplete

1. It doesn't have a pair of weak and strong complements
2. It doesn't accept memory order arguments
3. It should have memory order variants where just one is supplied, and also an
on-success and on-fail variant.

The C++ atomic reference shows the complete set of operations
(https://en.cppreference.com/w/cpp/atomic/atomic/compare_exchange)

--
Aug 04 2019