islands.cpp: In instantiation of 'constexpr decltype(auto) FixPoint<F>::operator()(Args&& ...) const [with Args = {int, int&}; F = solve(const std::vector<std::vector<std::pair<int, int> > >&)::<lambda(const auto:1&, int, int)>]':
islands.cpp:91:17: required from here
islands.cpp:22:121: error: cannot call member function 'solve(const std::vector<std::vector<std::pair<int, int> > >&)::<lambda(const auto:1&, int, int)> [with auto:1 = FixPoint<solve(const std::vector<std::vector<std::pair<int, int> > >&)::<lambda(const auto:1&, int, int)> >]' without object
template<typename... Args> constexpr decltype(auto) operator()(Args&&... args) const noexcept(noexcept(F::operator()(std::declval<FixPoint>(), std::declval<Args>()...))){
~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
islands.cpp: In instantiation of 'constexpr decltype(auto) FixPoint<F>::operator()(Args&& ...) const [with Args = {int, int&}; F = solve(const std::vector<std::vector<std::pair<int, int> > >&)::<lambda(const auto:1&, int, int)>]':
islands.cpp:91:17: required from here
islands.cpp:22:121: error: cannot call member function 'solve(const std::vector<std::vector<std::pair<int, int> > >&)::<lambda(const auto:1&, int, int)> [with auto:1 = FixPoint<solve(const std::vector<std::vector<std::pair<int, int> > >&)::<lambda(const auto:1&, int, int)> >]' without object
islands.cpp: In instantiation of 'solve(const std::vector<std::vector<std::pair<int, int> > >&)::<lambda(const auto:1&, int, int)> [with auto:1 = FixPoint<solve(const std::vector<std::vector<std::pair<int, int> > >&)::<lambda(const auto:1&, int, int)> >]':
islands.cpp:23:26: required from 'constexpr decltype(auto) FixPoint<F>::operator()(Args&& ...) const [with Args = {int, int&}; F = solve(const std::vector<std::vector<std::pair<int, int> > >&)::<lambda(const auto:1&, int, int)>]'
islands.cpp:91:17: required from here
islands.cpp:11:38: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
#define rep3(i,a,b) for(int i = a; i < b; i++)
^
islands.cpp:7:32: note: in expansion of macro 'rep3'
#define overload3(a,b,c,d,...) d
^
islands.cpp:12:18: note: in expansion of macro 'overload3'
#define rep(...) overload3(__VA_ARGS__, rep3, rep2, rep1)(__VA_ARGS__)
^~~~~~~~~
islands.cpp:84:13: note: in expansion of macro 'rep'
rep(i, 1, g[at].size()){
^~~
islands.cpp: In instantiation of 'constexpr decltype(auto) FixPoint<F>::operator()(Args&& ...) const [with Args = {int&, const int&}; F = solve(const std::vector<std::vector<std::pair<int, int> > >&)::<lambda(const auto:1&, int, int)>]':
islands.cpp:87:22: required from 'solve(const std::vector<std::vector<std::pair<int, int> > >&)::<lambda(const auto:1&, int, int)> [with auto:1 = FixPoint<solve(const std::vector<std::vector<std::pair<int, int> > >&)::<lambda(const auto:1&, int, int)> >]'
islands.cpp:23:26: required from 'constexpr decltype(auto) FixPoint<F>::operator()(Args&& ...) const [with Args = {int, int&}; F = solve(const std::vector<std::vector<std::pair<int, int> > >&)::<lambda(const auto:1&, int, int)>]'
islands.cpp:91:17: required from here
islands.cpp:22:121: error: cannot call member function 'solve(const std::vector<std::vector<std::pair<int, int> > >&)::<lambda(const auto:1&, int, int)> [with auto:1 = FixPoint<solve(const std::vector<std::vector<std::pair<int, int> > >&)::<lambda(const auto:1&, int, int)> >]' without object
template<typename... Args> constexpr decltype(auto) operator()(Args&&... args) const noexcept(noexcept(F::operator()(std::declval<FixPoint>(), std::declval<Args>()...))){
~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
islands.cpp: In instantiation of 'constexpr decltype(auto) FixPoint<F>::operator()(Args&& ...) const [with Args = {int&, const int&}; F = solve(const std::vector<std::vector<std::pair<int, int> > >&)::<lambda(const auto:1&, int, int)>]':
islands.cpp:87:22: required from 'solve(const std::vector<std::vector<std::pair<int, int> > >&)::<lambda(const auto:1&, int, int)> [with auto:1 = FixPoint<solve(const std::vector<std::vector<std::pair<int, int> > >&)::<lambda(const auto:1&, int, int)> >]'
islands.cpp:23:26: required from 'constexpr decltype(auto) FixPoint<F>::operator()(Args&& ...) const [with Args = {int, int&}; F = solve(const std::vector<std::vector<std::pair<int, int> > >&)::<lambda(const auto:1&, int, int)>]'
islands.cpp:91:17: required from here
islands.cpp:22:121: error: cannot call member function 'solve(const std::vector<std::vector<std::pair<int, int> > >&)::<lambda(const auto:1&, int, int)> [with auto:1 = FixPoint<solve(const std::vector<std::vector<std::pair<int, int> > >&)::<lambda(const auto:1&, int, int)> >]' without object
islands.cpp: In function 'int main()':
islands.cpp:129:26: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for(int i = 0; i < vertex.size(); i++){
~~^~~~~~~~~~~~~~~
islands.cpp:130:29: warning: unused variable 'd' [-Wunused-variable]
for(auto& [to, d] : G[vertex[i]]){
^