diff --git a/src/test/util_tests.cpp b/src/test/util_tests.cpp index 70e2f89e0b0..a16280f8c6c 100644 --- a/src/test/util_tests.cpp +++ b/src/test/util_tests.cpp @@ -238,9 +238,9 @@ BOOST_AUTO_TEST_CASE(span_write_bytes) BOOST_AUTO_TEST_CASE(util_Join) { // Normal version - BOOST_CHECK_EQUAL(Join({}, ", "), ""); - BOOST_CHECK_EQUAL(Join({"foo"}, ", "), "foo"); - BOOST_CHECK_EQUAL(Join({"foo", "bar"}, ", "), "foo, bar"); + BOOST_CHECK_EQUAL(Join(std::vector{}, ", "), ""); + BOOST_CHECK_EQUAL(Join(std::vector{"foo"}, ", "), "foo"); + BOOST_CHECK_EQUAL(Join(std::vector{"foo", "bar"}, ", "), "foo, bar"); // Version with unary operator const auto op_upper = [](const std::string& s) { return ToUpper(s); }; diff --git a/src/util/string.h b/src/util/string.h index dd4de888bbe..f8d36493b8c 100644 --- a/src/util/string.h +++ b/src/util/string.h @@ -66,7 +66,6 @@ void ReplaceAll(std::string& in_out, const std::string& search, const std::strin */ template auto Join(const std::vector& list, const BaseType& separator, UnaryOp unary_op) - -> decltype(unary_op(list.at(0))) { decltype(unary_op(list.at(0))) ret; for (size_t i = 0; i < list.size(); ++i) { @@ -82,12 +81,6 @@ T Join(const std::vector& list, const T2& separator) return Join(list, separator, [](const T& i) { return i; }); } -// Explicit overload needed for c_str arguments, which would otherwise cause a substitution failure in the template above. -inline std::string Join(const std::vector& list, std::string_view separator) -{ - return Join(list, separator); -} - /** * Create an unordered multi-line list of items. */