In file included from /usr/include/c++/13/bits/stl_algobase.h:71,
from /usr/include/c++/13/string:51,
from /usr/include/c++/13/bits/locale_classes.h:40,
from /usr/include/c++/13/bits/ios_base.h:41,
from /usr/include/c++/13/ios:44,
from /usr/include/c++/13/ostream:40,
from /usr/include/c++/13/iostream:41,
from regions.cpp:1:
/usr/include/c++/13/bits/predefined_ops.h: In instantiation of 'constexpr bool __gnu_cxx::__ops::_Iter_comp_val<_Compare>::operator()(_Iterator, _Value&) [with _Iterator = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; _Value = const int; _Compare = main()::<lambda(int&, int&)>]':
/usr/include/c++/13/bits/stl_algobase.h:1472:14: required from 'constexpr _ForwardIterator std::__lower_bound(_ForwardIterator, _ForwardIterator, const _Tp&, _Compare) [with _ForwardIterator = __gnu_cxx::__normal_iterator<int*, vector<int> >; _Tp = int; _Compare = __gnu_cxx::__ops::_Iter_comp_val<main()::<lambda(int&, int&)> >]'
/usr/include/c++/13/bits/stl_algo.h:2015:32: required from 'constexpr _FIter std::lower_bound(_FIter, _FIter, const _Tp&, _Compare) [with _FIter = __gnu_cxx::__normal_iterator<int*, vector<int> >; _Tp = int; _Compare = main()::<lambda(int&, int&)>]'
regions.cpp:52:27: required from here
/usr/include/c++/13/bits/predefined_ops.h:196:30: error: no match for call to '(main()::<lambda(int&, int&)>) (int&, const int&)'
196 | { return bool(_M_comp(*__it, __val)); }
| ~~~~~~~^~~~~~~~~~~~~~
/usr/include/c++/13/bits/predefined_ops.h:196:30: note: candidate: 'bool (*)(int&, int&)' (conversion)
/usr/include/c++/13/bits/predefined_ops.h:196:30: note: conversion of argument 3 would be ill-formed:
/usr/include/c++/13/bits/predefined_ops.h:196:30: error: binding reference of type 'int&' to 'const int' discards qualifiers
regions.cpp:41:15: note: candidate: 'main()::<lambda(int&, int&)>' (near match)
41 | auto cmp1 = [](int &node, int &val) { return tin[node] < val; };
| ^
regions.cpp:41:15: note: conversion of argument 2 would be ill-formed:
/usr/include/c++/13/bits/predefined_ops.h:196:30: error: binding reference of type 'int&' to 'const int' discards qualifiers
196 | { return bool(_M_comp(*__it, __val)); }
| ~~~~~~~^~~~~~~~~~~~~~
/usr/include/c++/13/bits/predefined_ops.h: In instantiation of 'constexpr bool __gnu_cxx::__ops::_Val_comp_iter<_Compare>::operator()(_Value&, _Iterator) [with _Value = const int; _Iterator = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; _Compare = main()::<lambda(int&, int&)>]':
/usr/include/c++/13/bits/stl_algo.h:2035:14: required from 'constexpr _ForwardIterator std::__upper_bound(_ForwardIterator, _ForwardIterator, const _Tp&, _Compare) [with _ForwardIterator = __gnu_cxx::__normal_iterator<int*, vector<int> >; _Tp = int; _Compare = __gnu_cxx::__ops::_Val_comp_iter<main()::<lambda(int&, int&)> >]'
/usr/include/c++/13/bits/stl_algo.h:2102:32: required from 'constexpr _FIter std::upper_bound(_FIter, _FIter, const _Tp&, _Compare) [with _FIter = __gnu_cxx::__normal_iterator<int*, vector<int> >; _Tp = int; _Compare = main()::<lambda(int&, int&)>]'
regions.cpp:54:27: required from here
/usr/include/c++/13/bits/predefined_ops.h:240:30: error: no match for call to '(main()::<lambda(int&, int&)>) (const int&, int&)'
240 | { return bool(_M_comp(__val, *__it)); }
| ~~~~~~~^~~~~~~~~~~~~~
/usr/include/c++/13/bits/predefined_ops.h:240:30: note: candidate: 'bool (*)(int&, int&)' (conversion)
/usr/include/c++/13/bits/predefined_ops.h:240:30: note: conversion of argument 2 would be ill-formed:
/usr/include/c++/13/bits/predefined_ops.h:240:30: error: binding reference of type 'int&' to 'const int' discards qualifiers
regions.cpp:42:15: note: candidate: 'main()::<lambda(int&, int&)>' (near match)
42 | auto cmp2 = [](int &val, int &node) { return val < tin[node]; };
| ^
regions.cpp:42:15: note: conversion of argument 1 would be ill-formed:
/usr/include/c++/13/bits/predefined_ops.h:240:30: error: binding reference of type 'int&' to 'const int' discards qualifiers
240 | { return bool(_M_comp(__val, *__it)); }
| ~~~~~~~^~~~~~~~~~~~~~