Skip to content

Commit 0289d2a

Browse files
authored
[SYCL] Fix ranges to allow default constructor to 0s (#10676)
This addresses an expected change in the spec. Signed-off-by: James Brodman <[email protected]>
1 parent 1bbcf09 commit 0289d2a

File tree

2 files changed

+9
-1
lines changed

2 files changed

+9
-1
lines changed

sycl/include/sycl/range.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ template <int Dimensions = 1> class range : public detail::array<Dimensions> {
6363
range(range<Dimensions> &&rhs) = default;
6464
range<Dimensions> &operator=(const range<Dimensions> &rhs) = default;
6565
range<Dimensions> &operator=(range<Dimensions> &&rhs) = default;
66-
range() = delete;
66+
range() = default;
6767

6868
// OP is: +, -, *, /, %, <<, >>, &, |, ^, &&, ||, <, >, <=, >=
6969
#define __SYCL_GEN_OPT_BASE(op) \

sycl/test/basic_tests/range.cpp

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,4 +62,12 @@ int main() {
6262
assert((two_dim_range--) == (two_dim_range_copy + 1));
6363
assert((three_dim_range++) == (three_dim_range_copy));
6464
assert((three_dim_range--) == (three_dim_range_copy + 1));
65+
66+
sycl::range<3> default3;
67+
sycl::range<2> default2;
68+
sycl::range<1> default1;
69+
70+
assert(default3[0] == 0 && default3[1] == 0 && default3[2] == 0);
71+
assert(default2[0] == 0 && default2[1] == 0);
72+
assert(default1[0] == 0);
6573
}

0 commit comments

Comments
 (0)