xorsort.cpp: In function 'void solve1()':
xorsort.cpp:33:99: error: expected ';' before '}' token
33 | FOR(j, max(lastMx - 1, 1), n - i + 1) a[j] ^= a[j + 1], ans.push_back(make_pair(j, j + 1))
| ^
| ;
34 | }
| ~
xorsort.cpp:12:40: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
12 | #define FOR(i, a, b) for(auto i = a; i < b; i++)
......
36 | FOR(i, 0, ans.size()) {
| ~~~~~~~~~~~~~~~~
xorsort.cpp:36:5: note: in expansion of macro 'FOR'
36 | FOR(i, 0, ans.size()) {
| ^~~
xorsort.cpp: In function 'void solve2()':
xorsort.cpp:12:40: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
12 | #define FOR(i, a, b) for(auto i = a; i < b; i++)
......
56 | FOR(i, 0, ans.size()) {
| ~~~~~~~~~~~~~~~~
xorsort.cpp:56:5: note: in expansion of macro 'FOR'
56 | FOR(i, 0, ans.size()) {
| ^~~