diff --git a/sprout/algorithm/fixed/clamp_range_copy.hpp b/sprout/algorithm/fixed/clamp_range_copy.hpp index 3682807d..6d467ea1 100644 --- a/sprout/algorithm/fixed/clamp_range_copy.hpp +++ b/sprout/algorithm/fixed/clamp_range_copy.hpp @@ -75,7 +75,7 @@ namespace sprout { typename sprout::fixed::results::algorithm::type >::type clamp_range_copy_impl( - InputIterator, InputIterator, Result const& result, + InputIterator const&, InputIterator const&, Result const& result, typename std::iterator_traits::value_type const&, typename std::iterator_traits::value_type const&, Compare, diff --git a/sprout/algorithm/fixed/copy.hpp b/sprout/algorithm/fixed/copy.hpp index 20635ffb..dcf7d131 100644 --- a/sprout/algorithm/fixed/copy.hpp +++ b/sprout/algorithm/fixed/copy.hpp @@ -66,7 +66,7 @@ namespace sprout { typename sprout::fixed::results::algorithm::type >::type copy_impl( - InputIterator, InputIterator, Result const& result, + InputIterator const&, InputIterator const&, Result const& result, typename sprout::container_traits::size_type, Args const&... args ) diff --git a/sprout/algorithm/fixed/copy_until.hpp b/sprout/algorithm/fixed/copy_until.hpp index bdb4e7c1..e65c262b 100644 --- a/sprout/algorithm/fixed/copy_until.hpp +++ b/sprout/algorithm/fixed/copy_until.hpp @@ -43,7 +43,7 @@ namespace sprout { typename sprout::fixed::results::algorithm::type >::type copy_until_impl( - InputIterator, InputIterator, Result const& result, Predicate, + InputIterator const&, InputIterator const&, Result const& result, Predicate, typename sprout::container_traits::size_type, Args const&... args ) diff --git a/sprout/algorithm/fixed/copy_while.hpp b/sprout/algorithm/fixed/copy_while.hpp index 7f486f72..5b8bbc75 100644 --- a/sprout/algorithm/fixed/copy_while.hpp +++ b/sprout/algorithm/fixed/copy_while.hpp @@ -42,7 +42,7 @@ namespace sprout { typename sprout::fixed::results::algorithm::type >::type copy_while_impl( - InputIterator, InputIterator, Result const& result, Predicate, + InputIterator const&, InputIterator const&, Result const& result, Predicate, typename sprout::container_traits::size_type, Args const&... args ) diff --git a/sprout/algorithm/fixed/replace_copy.hpp b/sprout/algorithm/fixed/replace_copy.hpp index 41009cb9..07cf1174 100644 --- a/sprout/algorithm/fixed/replace_copy.hpp +++ b/sprout/algorithm/fixed/replace_copy.hpp @@ -69,7 +69,7 @@ namespace sprout { typename sprout::fixed::results::algorithm::type >::type replace_copy_impl( - InputIterator, InputIterator, + InputIterator const&, InputIterator const&, Result const& result, T const&, T const&, typename sprout::container_traits::size_type, Args const&... args diff --git a/sprout/algorithm/fixed/replace_copy_if.hpp b/sprout/algorithm/fixed/replace_copy_if.hpp index ab65579b..c3f6fccd 100644 --- a/sprout/algorithm/fixed/replace_copy_if.hpp +++ b/sprout/algorithm/fixed/replace_copy_if.hpp @@ -68,7 +68,7 @@ namespace sprout { typename sprout::fixed::results::algorithm::type >::type replace_copy_if_impl( - InputIterator, InputIterator, + InputIterator const&, InputIterator const&, Result const& result, Predicate, T const&, typename sprout::container_traits::size_type, Args const&... args diff --git a/sprout/algorithm/fixed/rotate_copy.hpp b/sprout/algorithm/fixed/rotate_copy.hpp index ef4fdb06..b20b7ad7 100644 --- a/sprout/algorithm/fixed/rotate_copy.hpp +++ b/sprout/algorithm/fixed/rotate_copy.hpp @@ -75,7 +75,7 @@ namespace sprout { typename sprout::fixed::results::algorithm::type >::type rotate_copy_impl_1( - ForwardIterator, ForwardIterator, + ForwardIterator const&, ForwardIterator const&, Result const& result, typename sprout::container_traits::size_type, Args const&... args @@ -106,8 +106,8 @@ namespace sprout { typename sprout::fixed::results::algorithm::type >::type rotate_copy_impl( - ForwardIterator, ForwardIterator, - ForwardIterator, ForwardIterator, + ForwardIterator const&, ForwardIterator const&, + ForwardIterator const&, ForwardIterator const&, Result const& result, typename sprout::container_traits::size_type, Args const&... args diff --git a/sprout/algorithm/fixed/swap_element_copy.hpp b/sprout/algorithm/fixed/swap_element_copy.hpp index bd9bf299..2e81f779 100644 --- a/sprout/algorithm/fixed/swap_element_copy.hpp +++ b/sprout/algorithm/fixed/swap_element_copy.hpp @@ -76,9 +76,9 @@ namespace sprout { typename sprout::fixed::results::algorithm::type >::type swap_element_copy_impl( - ForwardIterator, ForwardIterator, + ForwardIterator const&, ForwardIterator const&, Result const& result, - ForwardIterator, ForwardIterator, + ForwardIterator const&, ForwardIterator const&, typename sprout::container_traits::size_type, Args const&... args ) diff --git a/sprout/algorithm/fixed/transform.hpp b/sprout/algorithm/fixed/transform.hpp index eadb6207..9dca624f 100644 --- a/sprout/algorithm/fixed/transform.hpp +++ b/sprout/algorithm/fixed/transform.hpp @@ -70,7 +70,7 @@ namespace sprout { typename sprout::fixed::results::algorithm::type >::type transform_impl( - InputIterator, InputIterator, + InputIterator const&, InputIterator const&, Result const& result, UnaryOperation, typename sprout::container_traits::size_type, Args const&... args diff --git a/sprout/algorithm/string/join.hpp b/sprout/algorithm/string/join.hpp index f18cfcf6..92931a1b 100644 --- a/sprout/algorithm/string/join.hpp +++ b/sprout/algorithm/string/join.hpp @@ -173,7 +173,7 @@ namespace sprout { Result >::type join_impl_1( ContIterator, ContIterator, - InputIterator, InputIterator, + InputIterator const&, InputIterator const&, Args const&... args ) { @@ -355,7 +355,7 @@ namespace sprout { ContIterator, ContIterator, SepIterator, SepIterator, bool, - InputIterator, InputIterator, + InputIterator const&, InputIterator const&, Args const&... args ) { diff --git a/sprout/checksum/md5.hpp b/sprout/checksum/md5.hpp index bf17fc2d..14b744b1 100644 --- a/sprout/checksum/md5.hpp +++ b/sprout/checksum/md5.hpp @@ -309,7 +309,7 @@ namespace sprout { ); } template - SPROUT_CONSTEXPR md5 const process_block_impl(InputIterator first, InputIterator last) const { + SPROUT_CONSTEXPR md5 const process_block_impl(InputIterator const& first, InputIterator const& last) const { return first == last ? *this : c_process_byte(*first).process_block_impl(sprout::next(first), last) ; @@ -362,7 +362,7 @@ namespace sprout { block_.assign(0); } template - SPROUT_CXX14_CONSTEXPR void process_block_impl(InputIterator first, InputIterator last) { + SPROUT_CXX14_CONSTEXPR void process_block_impl(InputIterator const& first, InputIterator const& last) { for (; first != last; ++first) { process_byte(*first); } diff --git a/sprout/checksum/sha1.hpp b/sprout/checksum/sha1.hpp index ba67fb68..53e046b0 100644 --- a/sprout/checksum/sha1.hpp +++ b/sprout/checksum/sha1.hpp @@ -163,7 +163,7 @@ namespace sprout { } template SPROUT_CONSTEXPR typename std::enable_if::type - process_block_impl(InputIterator first, InputIterator last, Args... args) const { + process_block_impl(InputIterator const& first, InputIterator const& last, Args... args) const { return first == last ? process( h_, sprout::make_array(args...), @@ -182,12 +182,12 @@ namespace sprout { } template SPROUT_CONSTEXPR typename std::enable_if::type - process_block_impl(InputIterator, InputIterator, Args...) const { + process_block_impl(InputIterator const&, InputIterator const&, Args...) const { return sprout::throw_recursive_function_template_instantiation_exeeded(); } template SPROUT_CONSTEXPR typename std::enable_if::type - process_block_impl(InputIterator first, InputIterator last, Args... args) const { + process_block_impl(InputIterator const& first, InputIterator const& last, Args... args) const { return first == last ? process( h_, sprout::get_internal(sprout::range::fixed::copy(sprout::make_array(args...), sprout::sub(block_, block_byte_index_))), @@ -208,7 +208,7 @@ namespace sprout { } template SPROUT_CONSTEXPR typename std::enable_if::type - process_block_impl(InputIterator, InputIterator, Args...) const { + process_block_impl(InputIterator const&, InputIterator const&, Args...) const { return sprout::throw_recursive_function_template_instantiation_exeeded(); } #else @@ -273,7 +273,7 @@ namespace sprout { } template SPROUT_CONSTEXPR typename std::enable_if::type - process_block_impl(InputIterator first, InputIterator last, Args... args) const { + process_block_impl(InputIterator const& first, InputIterator const& last, Args... args) const { return first == last ? process( h_, sprout::make_array(args...), @@ -290,7 +290,7 @@ namespace sprout { } template SPROUT_CONSTEXPR typename std::enable_if::type - process_block_impl(InputIterator first, InputIterator last, Args... args) const { + process_block_impl(InputIterator const& first, InputIterator const& last, Args... args) const { return first == last ? process( h_, sprout::get_internal(sprout::range::fixed::copy(sprout::make_array(args...), sprout::sub(block_, block_byte_index_))), diff --git a/sprout/checksum/sum.hpp b/sprout/checksum/sum.hpp index a730d75e..50a322e6 100644 --- a/sprout/checksum/sum.hpp +++ b/sprout/checksum/sum.hpp @@ -44,7 +44,7 @@ namespace sprout { sum_type sum_; private: template - SPROUT_CONSTEXPR sum_type calc_sum(InputIterator first, InputIterator last) const { + SPROUT_CONSTEXPR sum_type calc_sum(InputIterator const& first, InputIterator const& last) const { return sprout::accumulate( sprout::make_bytes_iterator(first), sprout::make_bytes_iterator(last), diff --git a/sprout/checksum/xor.hpp b/sprout/checksum/xor.hpp index e7b29152..f644f0fb 100644 --- a/sprout/checksum/xor.hpp +++ b/sprout/checksum/xor.hpp @@ -33,7 +33,7 @@ namespace sprout { sum_type sum_; private: template - SPROUT_CONSTEXPR sum_type calc_sum(InputIterator first, InputIterator last) const { + SPROUT_CONSTEXPR sum_type calc_sum(InputIterator const& first, InputIterator const& last) const { return sprout::accumulate( sprout::make_bytes_iterator(first), sprout::make_bytes_iterator(last), diff --git a/sprout/numeric/dft/fixed/amplitude_spectrum.hpp b/sprout/numeric/dft/fixed/amplitude_spectrum.hpp index a7daea68..65bfd9ab 100644 --- a/sprout/numeric/dft/fixed/amplitude_spectrum.hpp +++ b/sprout/numeric/dft/fixed/amplitude_spectrum.hpp @@ -68,7 +68,7 @@ namespace sprout { typename sprout::fixed::results::algorithm::type >::type amplitude_spectrum_impl( - InputIterator, InputIterator, Result const& result, + InputIterator const&, InputIterator const&, Result const& result, typename sprout::container_traits::size_type, Args const&... args ) diff --git a/sprout/numeric/dft/fixed/phase_spectrum.hpp b/sprout/numeric/dft/fixed/phase_spectrum.hpp index 0b1a53e7..ac022d12 100644 --- a/sprout/numeric/dft/fixed/phase_spectrum.hpp +++ b/sprout/numeric/dft/fixed/phase_spectrum.hpp @@ -68,7 +68,7 @@ namespace sprout { typename sprout::fixed::results::algorithm::type >::type phase_spectrum_impl( - InputIterator, InputIterator, Result const& result, + InputIterator const&, InputIterator const&, Result const& result, typename sprout::container_traits::size_type, Args const&... args ) diff --git a/sprout/numeric/fixed/adjacent_difference.hpp b/sprout/numeric/fixed/adjacent_difference.hpp index 022d9afa..49624986 100644 --- a/sprout/numeric/fixed/adjacent_difference.hpp +++ b/sprout/numeric/fixed/adjacent_difference.hpp @@ -59,7 +59,7 @@ namespace sprout { typename sprout::fixed::results::algorithm::type >::type adjacent_difference_impl( - InputIterator, InputIterator, Result const& result, + InputIterator const&, InputIterator const&, Result const& result, typename sprout::container_traits::size_type ) { @@ -133,7 +133,7 @@ namespace sprout { typename sprout::fixed::results::algorithm::type >::type adjacent_difference_impl( - InputIterator, InputIterator, Result const& result, BinaryOperation, + InputIterator const&, InputIterator const&, Result const& result, BinaryOperation, typename sprout::container_traits::size_type ) { diff --git a/sprout/numeric/fixed/exclusive_scan.hpp b/sprout/numeric/fixed/exclusive_scan.hpp index ad767372..d7d80ffa 100644 --- a/sprout/numeric/fixed/exclusive_scan.hpp +++ b/sprout/numeric/fixed/exclusive_scan.hpp @@ -59,7 +59,7 @@ namespace sprout { typename sprout::fixed::results::algorithm::type >::type exclusive_scan_impl( - InputIterator, InputIterator, Result const& result, T, + InputIterator const&, InputIterator const&, Result const& result, T, typename sprout::container_traits::size_type ) { @@ -71,7 +71,7 @@ namespace sprout { typename sprout::fixed::results::algorithm::type >::type exclusive_scan_impl( - InputIterator, InputIterator, Result const& result, T init, + InputIterator const&, InputIterator const&, Result const& result, T init, typename sprout::container_traits::size_type ) { @@ -147,7 +147,7 @@ namespace sprout { typename sprout::fixed::results::algorithm::type >::type exclusive_scan_impl( - InputIterator, InputIterator, Result const& result, T, BinaryOperation, + InputIterator const&, InputIterator const&, Result const& result, T, BinaryOperation, typename sprout::container_traits::size_type ) { @@ -159,7 +159,7 @@ namespace sprout { typename sprout::fixed::results::algorithm::type >::type exclusive_scan_impl( - InputIterator, InputIterator, Result const& result, T init, BinaryOperation, + InputIterator const&, InputIterator const&, Result const& result, T init, BinaryOperation, typename sprout::container_traits::size_type ) { diff --git a/sprout/numeric/fixed/inclusive_scan.hpp b/sprout/numeric/fixed/inclusive_scan.hpp index 036b9a75..01cb0dc3 100644 --- a/sprout/numeric/fixed/inclusive_scan.hpp +++ b/sprout/numeric/fixed/inclusive_scan.hpp @@ -53,7 +53,7 @@ namespace sprout { typename sprout::fixed::results::algorithm::type >::type inclusive_scan_impl( - InputIterator, InputIterator, Result const& result, BinaryOperation, T, + InputIterator const&, InputIterator const&, Result const& result, BinaryOperation, T, typename sprout::container_traits::size_type ) { @@ -65,7 +65,7 @@ namespace sprout { typename sprout::fixed::results::algorithm::type >::type inclusive_scan_impl( - InputIterator, InputIterator, Result const& result, BinaryOperation, T init, + InputIterator const&, InputIterator const&, Result const& result, BinaryOperation, T init, typename sprout::container_traits::size_type ) { diff --git a/sprout/numeric/fixed/partial_sum.hpp b/sprout/numeric/fixed/partial_sum.hpp index d6b2a1fc..e5081d02 100644 --- a/sprout/numeric/fixed/partial_sum.hpp +++ b/sprout/numeric/fixed/partial_sum.hpp @@ -59,7 +59,7 @@ namespace sprout { typename sprout::fixed::results::algorithm::type >::type partial_sum_impl( - InputIterator, InputIterator, Result const& result, + InputIterator const&, InputIterator const&, Result const& result, typename sprout::container_traits::size_type ) { @@ -133,7 +133,7 @@ namespace sprout { typename sprout::fixed::results::algorithm::type >::type partial_sum_impl( - InputIterator, InputIterator, Result const& result, BinaryOperation, + InputIterator const&, InputIterator const&, Result const& result, BinaryOperation, typename sprout::container_traits::size_type ) { diff --git a/sprout/numeric/fixed/transform_exclusive_scan.hpp b/sprout/numeric/fixed/transform_exclusive_scan.hpp index 675afb7e..c5eb5d0a 100644 --- a/sprout/numeric/fixed/transform_exclusive_scan.hpp +++ b/sprout/numeric/fixed/transform_exclusive_scan.hpp @@ -59,7 +59,7 @@ namespace sprout { typename sprout::fixed::results::algorithm::type >::type transform_exclusive_scan_impl( - InputIterator, InputIterator, Result const& result, T, BinaryOperation, UnaryOperation, + InputIterator const&, InputIterator const&, Result const& result, T, BinaryOperation, UnaryOperation, typename sprout::container_traits::size_type ) { @@ -71,7 +71,7 @@ namespace sprout { typename sprout::fixed::results::algorithm::type >::type transform_exclusive_scan_impl( - InputIterator, InputIterator, Result const& result, T init, BinaryOperation, UnaryOperation, + InputIterator const&, InputIterator const&, Result const& result, T init, BinaryOperation, UnaryOperation, typename sprout::container_traits::size_type ) { diff --git a/sprout/numeric/fixed/transform_inclusive_scan.hpp b/sprout/numeric/fixed/transform_inclusive_scan.hpp index a831d44e..44d12d8d 100644 --- a/sprout/numeric/fixed/transform_inclusive_scan.hpp +++ b/sprout/numeric/fixed/transform_inclusive_scan.hpp @@ -59,7 +59,7 @@ namespace sprout { typename sprout::fixed::results::algorithm::type >::type transform_inclusive_scan_impl( - InputIterator, InputIterator, Result const& result, BinaryOperation, UnaryOperation, + InputIterator const&, InputIterator const&, Result const& result, BinaryOperation, UnaryOperation, typename sprout::container_traits::size_type ) { @@ -102,7 +102,7 @@ namespace sprout { typename sprout::fixed::results::algorithm::type >::type transform_inclusive_scan_impl( - InputIterator, InputIterator, Result const& result, BinaryOperation, T, + InputIterator const&, InputIterator const&, Result const& result, BinaryOperation, T, typename sprout::container_traits::size_type ) { @@ -114,7 +114,7 @@ namespace sprout { typename sprout::fixed::results::algorithm::type >::type transform_inclusive_scan_impl( - InputIterator, InputIterator, Result const& result, BinaryOperation, T init, + InputIterator const&, InputIterator const&, Result const& result, BinaryOperation, T init, typename sprout::container_traits::size_type ) { diff --git a/testspr/print.hpp b/testspr/print.hpp index 8eaabfb7..afe82378 100644 --- a/testspr/print.hpp +++ b/testspr/print.hpp @@ -138,6 +138,11 @@ namespace testspr { print_typename() { testspr::print_ln(testspr::typename_of()); } + template + inline SPROUT_NON_CONSTEXPR void + print_typename(T&& t) { + testspr::print_ln(testspr::typename_of(std::forward(t))); + } // // print_type