Skip to content

Commit 85d9359

Browse files
committed
Deprecate global namespace default type aliases
1 parent d3b6721 commit 85d9359

File tree

1 file changed

+31
-19
lines changed

1 file changed

+31
-19
lines changed

common/src/KokkosKernels_default_types.hpp

Lines changed: 31 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -20,61 +20,73 @@
2020
#include "Kokkos_Core.hpp" //for LayoutLeft/LayoutRight
2121
#include <KokkosKernels_config.h> //for all the ETI #cmakedefine macros
2222

23+
// define a deprecated symbol = type in the global namespace
24+
// and a non-deprecated version in Kokkos Kernels
25+
// these deprecations were done in 4.4.
26+
#define KK_IMPL_MAKE_TYPE_ALIAS(symbol, type) \
27+
using symbol [[deprecated("use KokkosKernels::" #type ".")]] = type; \
28+
namespace KokkosKernels { \
29+
using symbol = type; \
30+
}
31+
2332
namespace KokkosKernels {
2433

2534
#if defined(KOKKOSKERNELS_INST_ORDINAL_INT)
26-
using default_lno_t = int;
35+
KK_IMPL_MAKE_TYPE_ALIAS(default_lno_t, int)
2736
#elif defined(KOKKOSKERNELS_INST_ORDINAL_INT64_T)
28-
using default_lno_t = int64_t;
37+
KK_IMPL_MAKE_TYPE_ALIAS(default_lno_t, int64_t)
2938
#else
3039
// Non-ETI build: default to int
31-
using default_lno_t = int;
40+
KK_IMPL_MAKE_TYPE_ALIAS(default_lno_t, int)
3241
#endif
3342
// Prefer int as the default offset type, because cuSPARSE doesn't support
3443
// size_t for rowptrs.
3544
#if defined(KOKKOSKERNELS_INST_OFFSET_INT)
36-
using default_size_type = int;
45+
KK_IMPL_MAKE_TYPE_ALIAS(default_size_type, int)
3746
#elif defined(KOKKOSKERNELS_INST_OFFSET_SIZE_T)
38-
using default_size_type = size_t;
47+
KK_IMPL_MAKE_TYPE_ALIAS(default_size_type, size_t)
3948
#else
4049
// Non-ETI build: default to int
41-
using default_size_type = int;
50+
KK_IMPL_MAKE_TYPE_ALIAS(default_size_type, int)
4251
#endif
4352

4453
#if defined(KOKKOSKERNELS_INST_LAYOUTLEFT)
4554
using default_layout = Kokkos::LayoutLeft;
55+
KK_IMPL_MAKE_TYPE_ALIAS(default_layout, Kokkos::LayoutLeft)
4656
#elif defined(KOKKOSKERNELS_INST_LAYOUTRIGHT)
47-
using default_layout = Kokkos::LayoutRight;
57+
KK_IMPL_MAKE_TYPE_ALIAS(default_layout, Kokkos::LayoutRight)
4858
#else
49-
using default_layout = Kokkos::LayoutLeft;
59+
KK_IMPL_MAKE_TYPE_ALIAS(default_layout, Kokkos::LayoutLeft)
5060
#endif
5161

5262
#if defined(KOKKOSKERNELS_INST_DOUBLE)
53-
using default_scalar = double;
63+
KK_IMPL_MAKE_TYPE_ALIAS(default_scalar, double)
5464
#elif defined(KOKKOSKERNELS_INST_FLOAT)
55-
using default_scalar = float;
65+
KK_IMPL_MAKE_TYPE_ALIAS(default_scalar, float)
5666
#elif defined(KOKKOSKERNELS_INST_HALF)
57-
using default_scalar = Kokkos::Experimental::half_t;
67+
KK_IMPL_MAKE_TYPE_ALIAS(default_scalar, Kokkos::Experimental::half_t)
5868
#elif defined(KOKKOSKERNELS_INST_BHALF)
59-
using default_scalar = Kokkos::Experimental::bhalf_t;
69+
KK_IMPL_MAKE_TYPE_ALIAS(default_scalar, Kokkos::Experimental::bhalf_t)
6070
#else
61-
using default_scalar = double;
71+
KK_IMPL_MAKE_TYPE_ALIAS(default_scalar, double)
6272
#endif
6373

6474
#if defined(KOKKOS_ENABLE_CUDA)
65-
using default_device = Kokkos::Cuda;
75+
KK_IMPL_MAKE_TYPE_ALIAS(default_device, Kokkos::Cuda)
6676
#elif defined(KOKKOS_ENABLE_HIP)
67-
using default_device = Kokkos::HIP;
77+
KK_IMPL_MAKE_TYPE_ALIAS(default_device, Kokkos::HIP)
6878
#elif defined(KOKKOS_ENABLE_OPENMPTARGET)
69-
using default_device = Kokkos::Experimental::OpenMPTarget;
79+
KK_IMPL_MAKE_TYPE_ALIAS(default_device, Kokkos::Experimental::OpenMPTarget)
7080
#elif defined(KOKKOS_ENABLE_OPENMP)
71-
using default_device = Kokkos::OpenMP;
81+
KK_IMPL_MAKE_TYPE_ALIAS(default_device, Kokkos::OpenMP)
7282
#elif defined(KOKKOS_ENABLE_THREADS)
73-
using default_device = Kokkos::Threads;
83+
KK_IMPL_MAKE_TYPE_ALIAS(default_device, Kokkos::Threads)
7484
#else
75-
using default_device = Kokkos::Serial;
85+
KK_IMPL_MAKE_TYPE_ALIAS(default_device, Kokkos::Serial)
7686
#endif
7787

7888
} // namespace KokkosKernels
7989

90+
#undef KK_IMPL_MAKE_TYPE_ALIAS
91+
8092
#endif // KOKKOSKERNELS_DEFAULT_TYPES_H

0 commit comments

Comments
 (0)