Source: https://git.archlinux.org/svntogit/community.git/plain/trunk/boost-1.68.patch?h=packages/aegisub From d8336d2fed73c72d1227b343d6acfb991bc1651b Mon Sep 17 00:00:00 2001 From: Jan Beich <jbeich@FreeBSD.org> Date: Mon, 9 Jul 2018 20:15:29 +0000 Subject: [PATCH] Keep using std::distance after Boost 1.68 src/search_replace_engine.cpp:256:14: error: call to 'distance' is ambiguous count += distance( ^~~~~~~~ /usr/include/c++/v1/iterator:511:1: note: candidate function [with _InputIter = boost::u32regex_iterator<std::__1::__wrap_iter<const char *> >] distance(_InputIter __first, _InputIter __last) ^ /usr/local/include/boost/iterator/distance.hpp:49:9: note: candidate function [with SinglePassIterator = boost::u32regex_iterator<std::__1::__wrap_iter<const char *> >] distance(SinglePassIterator first, SinglePassIterator last) ^ --- src/search_replace_engine.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/search_replace_engine.cpp b/src/search_replace_engine.cpp index 594c21e5e..14c71680d 100644 --- a/src/search_replace_engine.cpp +++ b/src/search_replace_engine.cpp @@ -253,7 +253,7 @@ bool SearchReplaceEngine::ReplaceAll() { if (MatchState ms = matches(&diag, 0)) { auto& diag_field = diag.*get_dialogue_field(settings.field); std::string const& text = diag_field.get(); - count += distance( + count += std::distance( boost::u32regex_iterator<std::string::const_iterator>(begin(text), end(text), *ms.re), boost::u32regex_iterator<std::string::const_iterator>()); diag_field = u32regex_replace(text, *ms.re, settings.replace_with);