@@ -256,12 +256,7 @@ namespace xt
256256 using inner_backstrides_type = backstrides_type;
257257
258258 // NOTE: 0D (S::size() == 0) results in storage for 1 element (scalar)
259- #if defined(_MSC_VER) && _MSC_VER < 1910 && !defined(_WIN64)
260- // WORKAROUND FOR MSVC 2015 32 bit, fallback to unaligned container for 0D scalar case
261- using storage_type = std::array<ET, detail::fixed_compute_size<S>::value>;
262- #else
263259 using storage_type = aligned_array<ET, detail::fixed_compute_size<S>::value>;
264- #endif
265260
266261 using reference = typename storage_type::reference;
267262 using const_reference = typename storage_type::const_reference;
@@ -373,9 +368,9 @@ namespace xt
373368 storage_type& storage_impl () noexcept ;
374369 const storage_type& storage_impl () const noexcept ;
375370
376- XTENSOR_CONSTEXPR_RETURN const inner_shape_type& shape_impl () const noexcept ;
377- XTENSOR_CONSTEXPR_RETURN const inner_strides_type& strides_impl () const noexcept ;
378- XTENSOR_CONSTEXPR_RETURN const inner_backstrides_type& backstrides_impl () const noexcept ;
371+ constexpr const inner_shape_type& shape_impl () const noexcept ;
372+ constexpr const inner_strides_type& strides_impl () const noexcept ;
373+ constexpr const inner_backstrides_type& backstrides_impl () const noexcept ;
379374
380375 friend class xcontainer <xfixed_container<ET, S, L, SH, Tag>>;
381376 };
@@ -495,9 +490,9 @@ namespace xt
495490 storage_type& storage_impl () noexcept ;
496491 const storage_type& storage_impl () const noexcept ;
497492
498- XTENSOR_CONSTEXPR_RETURN const inner_shape_type& shape_impl () const noexcept ;
499- XTENSOR_CONSTEXPR_RETURN const inner_strides_type& strides_impl () const noexcept ;
500- XTENSOR_CONSTEXPR_RETURN const inner_backstrides_type& backstrides_impl () const noexcept ;
493+ constexpr const inner_shape_type& shape_impl () const noexcept ;
494+ constexpr const inner_strides_type& strides_impl () const noexcept ;
495+ constexpr const inner_backstrides_type& backstrides_impl () const noexcept ;
501496
502497 friend class xcontainer <xfixed_adaptor<EC, S, L, SH, Tag>>;
503498 };
@@ -740,21 +735,20 @@ namespace xt
740735 }
741736
742737 template <class ET , class S , layout_type L, bool SH, class Tag >
743- XTENSOR_CONSTEXPR_RETURN auto xfixed_container<ET, S, L, SH, Tag>::shape_impl() const noexcept
744- -> const inner_shape_type&
738+ constexpr auto xfixed_container<ET, S, L, SH, Tag>::shape_impl() const noexcept -> const inner_shape_type&
745739 {
746740 return m_shape;
747741 }
748742
749743 template <class ET , class S , layout_type L, bool SH, class Tag >
750- XTENSOR_CONSTEXPR_RETURN auto xfixed_container<ET, S, L, SH, Tag>::strides_impl() const noexcept
744+ constexpr auto xfixed_container<ET, S, L, SH, Tag>::strides_impl() const noexcept
751745 -> const inner_strides_type&
752746 {
753747 return m_strides;
754748 }
755749
756750 template <class ET , class S , layout_type L, bool SH, class Tag >
757- XTENSOR_CONSTEXPR_RETURN auto xfixed_container<ET, S, L, SH, Tag>::backstrides_impl() const noexcept
751+ constexpr auto xfixed_container<ET, S, L, SH, Tag>::backstrides_impl() const noexcept
758752 -> const inner_backstrides_type&
759753 {
760754 return m_backstrides;
@@ -937,21 +931,20 @@ namespace xt
937931 }
938932
939933 template <class EC , class S , layout_type L, bool SH, class Tag >
940- XTENSOR_CONSTEXPR_RETURN auto xfixed_adaptor<EC, S, L, SH, Tag>::shape_impl() const noexcept
941- -> const inner_shape_type&
934+ constexpr auto xfixed_adaptor<EC, S, L, SH, Tag>::shape_impl() const noexcept -> const inner_shape_type&
942935 {
943936 return m_shape;
944937 }
945938
946939 template <class EC , class S , layout_type L, bool SH, class Tag >
947- XTENSOR_CONSTEXPR_RETURN auto xfixed_adaptor<EC, S, L, SH, Tag>::strides_impl() const noexcept
940+ constexpr auto xfixed_adaptor<EC, S, L, SH, Tag>::strides_impl() const noexcept
948941 -> const inner_strides_type&
949942 {
950943 return m_strides;
951944 }
952945
953946 template <class EC , class S , layout_type L, bool SH, class Tag >
954- XTENSOR_CONSTEXPR_RETURN auto xfixed_adaptor<EC, S, L, SH, Tag>::backstrides_impl() const noexcept
947+ constexpr auto xfixed_adaptor<EC, S, L, SH, Tag>::backstrides_impl() const noexcept
955948 -> const inner_backstrides_type&
956949 {
957950 return m_backstrides;
0 commit comments