diff options
Diffstat (limited to 'src/lock.zig')
-rw-r--r-- | src/lock.zig | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/lock.zig b/src/lock.zig index 66d64cff2..3e07945c8 100644 --- a/src/lock.zig +++ b/src/lock.zig @@ -28,11 +28,12 @@ pub const Mutex = struct { } const cas_fn = comptime switch (strong) { - true => "compareAndSwap", - else => "tryCompareAndSwap", + true => Atomic(u32).compareAndSwap, + else => Atomic(u32).tryCompareAndSwap, }; - return @field(self.state, cas_fn)( + return cas_fn( + &self.state, UNLOCKED, LOCKED, .Acquire, |