Skip to content

Commit c6bc5a6

Browse files
authored
[SYCL] Add operator= to atomic_ref specializations (#4183)
Although operator= was defined in the base atomic_ref class, it was not correctly inherited by any of the specializations. Signed-off-by: John Pennycook <[email protected]>
1 parent 3da63dc commit c6bc5a6

File tree

1 file changed

+4
-0
lines changed

1 file changed

+4
-0
lines changed

sycl/include/sycl/ext/oneapi/atomic_ref.hpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -292,6 +292,7 @@ class atomic_ref_impl<T, DefaultOrder, DefaultScope, AddressSpace,
292292
using atomic_ref_base<T, DefaultOrder, DefaultScope, AddressSpace>::load;
293293
using atomic_ref_base<T, DefaultOrder, DefaultScope,
294294
AddressSpace>::compare_exchange_weak;
295+
using atomic_ref_base<T, DefaultOrder, DefaultScope, AddressSpace>::operator=;
295296

296297
T fetch_add(T operand, memory_order order = default_read_modify_write_order,
297298
memory_scope scope = default_scope) const noexcept {
@@ -439,6 +440,7 @@ class atomic_ref_impl<
439440
using atomic_ref_base<T, DefaultOrder, DefaultScope, AddressSpace>::load;
440441
using atomic_ref_base<T, DefaultOrder, DefaultScope,
441442
AddressSpace>::compare_exchange_weak;
443+
using atomic_ref_base<T, DefaultOrder, DefaultScope, AddressSpace>::operator=;
442444

443445
T fetch_add(T operand, memory_order order = default_read_modify_write_order,
444446
memory_scope scope = default_scope) const noexcept {
@@ -665,6 +667,8 @@ class atomic_ref : public detail::atomic_ref_impl<T, DefaultOrder, DefaultScope,
665667
public:
666668
using detail::atomic_ref_impl<T, DefaultOrder, DefaultScope,
667669
AddressSpace>::atomic_ref_impl;
670+
using detail::atomic_ref_impl<T, DefaultOrder, DefaultScope,
671+
AddressSpace>::operator=;
668672
};
669673

670674
} // namespace oneapi

0 commit comments

Comments
 (0)