|
16 | 16 |
|
17 | 17 | #pragma once |
18 | 18 |
|
19 | | -// Internal config header that is only included through thrust/detail/config/config.h |
| 19 | +#include <cuda/__cccl_config> |
20 | 20 |
|
21 | 21 | #if defined(_CCCL_IMPLICIT_SYSTEM_HEADER_GCC) |
22 | 22 | # pragma GCC system_header |
|
26 | 26 | # pragma system_header |
27 | 27 | #endif // no system header |
28 | 28 |
|
29 | | -#include <thrust/detail/config/cpp_dialect.h> // IWYU pragma: export |
30 | | - |
31 | | -#include <cuda/std/cstddef> |
32 | | - |
| 29 | +// deprecated [Since 2.8.0] |
33 | 30 | #define THRUST_NODISCARD _CCCL_NODISCARD |
34 | | - |
35 | | -// FIXME: Combine THRUST_INLINE_CONSTANT and |
36 | | -// THRUST_INLINE_INTEGRAL_MEMBER_CONSTANT into one macro when NVCC properly |
37 | | -// supports `constexpr` globals in host and device code. |
38 | | -#if defined(__CUDA_ARCH__) || defined(_NVHPC_CUDA) |
39 | | -// FIXME: Add this when NVCC supports inline variables. |
40 | | -// # if _CCCL_STD_VER >= 2017 |
41 | | -// # define THRUST_INLINE_CONSTANT inline constexpr |
42 | | -// # define THRUST_INLINE_INTEGRAL_MEMBER_CONSTANT inline constexpr |
43 | | -# define THRUST_INLINE_CONSTANT static const _CCCL_DEVICE |
44 | | -# define THRUST_INLINE_INTEGRAL_MEMBER_CONSTANT static constexpr |
45 | | - |
46 | | -#else |
47 | | -// FIXME: Add this when NVCC supports inline variables. |
48 | | -// # if _CCCL_STD_VER >= 2017 |
49 | | -// # define THRUST_INLINE_CONSTANT inline constexpr |
50 | | -// # define THRUST_INLINE_INTEGRAL_MEMBER_CONSTANT inline constexpr |
51 | | -# define THRUST_INLINE_CONSTANT static constexpr |
52 | | -# define THRUST_INLINE_INTEGRAL_MEMBER_CONSTANT static constexpr |
53 | | - |
54 | | -#endif |
| 31 | +// deprecated [Since 2.8.0] |
| 32 | +#define THRUST_INLINE_CONSTANT _CCCL_GLOBAL_CONSTANT |
| 33 | +// deprecated [Since 2.8.0] |
| 34 | +#define THRUST_INLINE_INTEGRAL_MEMBER_CONSTANT static constexpr |
0 commit comments