| // Copyright (c) 2024 Matt Borland | |
| // Use, modification and distribution are subject to the | |
| // Boost Software License, Version 1.0. (See accompanying file | |
| // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) | |
| // | |
| // Regular use of std::array functions can not be used on | |
| // GPU platforms like CUDA since they are missing the __device__ marker | |
| // Alias as needed to get correct support | |
| #ifndef BOOST_MATH_TOOLS_ARRAY_HPP | |
| #define BOOST_MATH_TOOLS_ARRAY_HPP | |
| #include <boost/math/tools/config.hpp> | |
| #ifdef BOOST_MATH_ENABLE_CUDA | |
| #include <cuda/std/array> | |
| namespace boost { | |
| namespace math { | |
| using cuda::std::array; | |
| } // namespace math | |
| } // namespace boost | |
| #else | |
| #include <array> | |
| namespace boost { | |
| namespace math { | |
| using std::array; | |
| } // namespace math | |
| } // namespace boost | |
| #endif // BOOST_MATH_ENABLE_CUDA | |
| #endif // BOOST_MATH_TOOLS_ARRAY_HPP |