1 // Copyright (c) 2014 Adam Wulkiewicz, Lodz, Poland. 2 // 3 // Use, modification and distribution is subject to the Boost Software License, 4 // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at 5 // http://www.boost.org/LICENSE_1_0.txt) 6 7 #ifndef BOOST_CORE_IGNORE_UNUSED_HPP 8 #define BOOST_CORE_IGNORE_UNUSED_HPP 9 10 #include <boost/config.hpp> 11 12 namespace boost { 13 14 #ifndef BOOST_NO_CXX11_VARIADIC_TEMPLATES 15 16 template <typename... Ts> 17 BOOST_FORCEINLINE BOOST_CXX14_CONSTEXPR void ignore_unused(Ts const& ...) 18 {} 19 20 template <typename... Ts> 21 BOOST_FORCEINLINE BOOST_CXX14_CONSTEXPR void ignore_unused() 22 {} 23 24 #else 25 26 template <typename T1> 27 BOOST_FORCEINLINE BOOST_CXX14_CONSTEXPR void ignore_unused(T1 const&) 28 {} 29 30 template <typename T1, typename T2> 31 BOOST_FORCEINLINE BOOST_CXX14_CONSTEXPR void ignore_unused(T1 const&, T2 const&) 32 {} 33 34 template <typename T1, typename T2, typename T3> 35 BOOST_FORCEINLINE BOOST_CXX14_CONSTEXPR void ignore_unused(T1 const&, T2 const&, T3 const&) 36 {} all_l8(gfc_array_l8 * const restrict retarray,gfc_array_l1 * const restrict array,const index_type * const restrict pdim)37 38 template <typename T1, typename T2, typename T3, typename T4> 39 BOOST_FORCEINLINE BOOST_CXX14_CONSTEXPR void ignore_unused(T1 const&, T2 const&, T3 const&, T4 const&) 40 {} 41 42 template <typename T1, typename T2, typename T3, typename T4, typename T5> 43 BOOST_FORCEINLINE BOOST_CXX14_CONSTEXPR void ignore_unused(T1 const&, T2 const&, T3 const&, T4 const&, T5 const&) 44 {} 45 46 template <typename T1> 47 BOOST_FORCEINLINE BOOST_CXX14_CONSTEXPR void ignore_unused() 48 {} 49 50 template <typename T1, typename T2> 51 BOOST_FORCEINLINE BOOST_CXX14_CONSTEXPR void ignore_unused() 52 {} 53 54 template <typename T1, typename T2, typename T3> 55 BOOST_FORCEINLINE BOOST_CXX14_CONSTEXPR void ignore_unused() 56 {} 57 58 template <typename T1, typename T2, typename T3, typename T4> 59 BOOST_FORCEINLINE BOOST_CXX14_CONSTEXPR void ignore_unused() 60 {} 61 62 template <typename T1, typename T2, typename T3, typename T4, typename T5> 63 BOOST_FORCEINLINE BOOST_CXX14_CONSTEXPR void ignore_unused() 64 {} 65 66 #endif 67 68 } // namespace boost 69 70 #endif // BOOST_CORE_IGNORE_UNUSED_HPP 71