We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 4c7f02a commit 74c7d61Copy full SHA for 74c7d61
DataFormats/Common/interface/DeviceProduct.h
@@ -4,6 +4,8 @@
4
#include <cassert>
5
#include <memory>
6
7
+#include "DataFormats/Common/interface/Uninitialized.h"
8
+
9
namespace edm {
10
class DeviceProductBase {
11
public:
@@ -45,7 +47,13 @@ namespace edm {
45
47
template <typename T>
46
48
class DeviceProduct : public DeviceProductBase {
49
- DeviceProduct() = default;
50
+ DeviceProduct()
51
+ requires(requires { T(); })
52
+ = default;
53
54
+ explicit DeviceProduct(edm::Uninitialized)
55
+ requires(requires { T(edm::kUninitialized); })
56
+ : data_{edm::kUninitialized} {}
57
58
template <typename M, typename... Args>
59
explicit DeviceProduct(std::shared_ptr<M> metadata, Args&&... args)
0 commit comments