Describe the bug
Follow-up to #23184: h_item's move constructor and move assignment are = default without the noexcept required since KhronosGroup/SYCL-Docs#1044. It also declares only four of the five special members, so it's missing the destructor that the rule of five requires (4.5.3).
To reproduce
- Include a code snippet that is as short as possible
- Specify the command which should be used to compile the program
- Specify the command which should be used to launch the program
- Indicate what is wrong and what was expected
Environment
- OS: [e.g Windows/Linux]
- Target device and vendor: [e.g. Intel GPU]
- DPC++ version: [e.g. commit hash or output of
clang++ --version]
- Dependencies version: [e.g. the output of
sycl-ls --verbose]
Additional context
The fix in sycl/include/sycl/h_item.hpp:
h_item(h_item &&hi) noexcept = default;
h_item &operator=(h_item &&hi) noexcept = default;
~h_item() = default;
h_item stays trivially copyable and trivially destructible with this change. I will work on this PR.
Describe the bug
Follow-up to #23184:
h_item's move constructor and move assignment are= defaultwithout thenoexceptrequired since KhronosGroup/SYCL-Docs#1044. It also declares only four of the five special members, so it's missing the destructor that the rule of five requires (4.5.3).To reproduce
Environment
clang++ --version]sycl-ls --verbose]Additional context
The fix in
sycl/include/sycl/h_item.hpp:h_itemstays trivially copyable and trivially destructible with this change. I will work on this PR.