Skip to content

Commit 9c6d43f

Browse files
committed
Remove out-of-line definition of constexpr static data members
Fixes, eg ``` xsimd/types/xsimd_batch.hpp:284:45: error: out-of-line definition of constexpr static data member is redundant in C++17 and is deprecated [-Werror,-Wdeprecated-redundant-constexpr-static-def] 284 | constexpr std::size_t batch_bool<T, A>::size; | ^ ```
1 parent e2478d6 commit 9c6d43f

File tree

2 files changed

+0
-21
lines changed

2 files changed

+0
-21
lines changed

include/xsimd/types/xsimd_batch.hpp

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -271,9 +271,6 @@ namespace xsimd
271271
XSIMD_INLINE batch logical_or(batch const& other) const noexcept;
272272
};
273273

274-
template <class T, class A>
275-
constexpr std::size_t batch<T, A>::size;
276-
277274
/**
278275
* @brief batch of predicate over scalar or complex values.
279276
*
@@ -344,9 +341,6 @@ namespace xsimd
344341
static XSIMD_INLINE register_type make_register(detail::index_sequence<>, V... v) noexcept;
345342
};
346343

347-
template <class T, class A>
348-
constexpr std::size_t batch_bool<T, A>::size;
349-
350344
/**
351345
* @brief batch of complex values.
352346
*
@@ -476,9 +470,6 @@ namespace xsimd
476470
real_batch m_imag;
477471
};
478472

479-
template <class T, class A>
480-
constexpr std::size_t batch<std::complex<T>, A>::size;
481-
482473
#ifdef XSIMD_ENABLE_XTL_COMPLEX
483474
template <typename T, bool i3ec, typename A>
484475
struct batch<xtl::xcomplex<T, T, i3ec>, A>

include/xsimd/types/xsimd_traits.hpp

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -53,9 +53,6 @@ namespace xsimd
5353
static constexpr size_t size = 1;
5454
};
5555

56-
template <class T>
57-
constexpr size_t simd_traits_impl<T, false>::size;
58-
5956
template <class T>
6057
struct simd_traits_impl<T, true>
6158
{
@@ -64,9 +61,6 @@ namespace xsimd
6461
static constexpr size_t size = type::size;
6562
};
6663

67-
template <class T>
68-
constexpr size_t simd_traits_impl<T, true>::size;
69-
7064
template <class T, class A>
7165
struct static_check_supported_config_emitter
7266
{
@@ -128,19 +122,13 @@ namespace xsimd
128122
static constexpr size_t size = simd_traits<type>::size;
129123
};
130124

131-
template <class T>
132-
constexpr size_t revert_simd_traits<T>::size;
133-
134125
template <class T>
135126
struct revert_simd_traits<batch<T>>
136127
{
137128
using type = T;
138129
static constexpr size_t size = batch<T>::size;
139130
};
140131

141-
template <class T>
142-
constexpr size_t revert_simd_traits<batch<T>>::size;
143-
144132
template <class T>
145133
using simd_type = typename simd_traits<T>::type;
146134

0 commit comments

Comments
 (0)