diff options
author | Nobuyoshi Nakada <nobu@ruby-lang.org> | 2020-04-26 22:39:36 +0900 |
---|---|---|
committer | Nobuyoshi Nakada <nobu@ruby-lang.org> | 2020-04-26 22:39:36 +0900 |
commit | 257e01b61db90ecf3a53957281770b5f3db3f919 (patch) | |
tree | 1f5a50d41b3578b9464be72759a582a7cff0a27c /ruby_atomic.h | |
parent | 1760c60174b80e837371a19ec13b1148629262cb (diff) |
Solaris does not provide atomic_sub family
Diffstat (limited to 'ruby_atomic.h')
-rw-r--r-- | ruby_atomic.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/ruby_atomic.h b/ruby_atomic.h index eaa9fcd869..fa888a1db0 100644 --- a/ruby_atomic.h +++ b/ruby_atomic.h @@ -117,7 +117,7 @@ rb_atomic_fetch_add(volatile rb_atomic_t *var, rb_atomic_t val) static inline rb_atomic_t rb_atomic_fetch_sub(volatile rb_atomic_t *var, rb_atomic_t val) { - return atomic_sub_int_nv(var, val) + val; + return atomic_add_int_nv(var, (rb_atomic_t)(-(int)val)) + val; } # if defined(_LP64) || defined(_I32LPx) |