sortbooks.cpp: In function 'void build(long long int, long long int, long long int)':
sortbooks.cpp:13:16: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
13 | #define tm (tl + tr >> 1)
| ~~~^~~~
sortbooks.cpp:14:24: note: in expansion of macro 'tm'
14 | #define ls v << 1, tl, tm
| ^~
sortbooks.cpp:58:8: note: in expansion of macro 'ls'
58 | build(ls);
| ^~
sortbooks.cpp:13:16: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
13 | #define tm (tl + tr >> 1)
| ~~~^~~~
sortbooks.cpp:15:24: note: in expansion of macro 'tm'
15 | #define rs v << 1 | 1, tm + 1, tr
| ^~
sortbooks.cpp:59:8: note: in expansion of macro 'rs'
59 | build(rs);
| ^~
sortbooks.cpp: In function 'void upd(long long int, long long int, long long int, long long int, long long int)':
sortbooks.cpp:13:16: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
13 | #define tm (tl + tr >> 1)
| ~~~^~~~
sortbooks.cpp:68:13: note: in expansion of macro 'tm'
68 | if (pos <= tm) upd(pos, val, ls);
| ^~
sortbooks.cpp:13:16: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
13 | #define tm (tl + tr >> 1)
| ~~~^~~~
sortbooks.cpp:14:24: note: in expansion of macro 'tm'
14 | #define ls v << 1, tl, tm
| ^~
sortbooks.cpp:68:31: note: in expansion of macro 'ls'
68 | if (pos <= tm) upd(pos, val, ls);
| ^~
sortbooks.cpp:13:16: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
13 | #define tm (tl + tr >> 1)
| ~~~^~~~
sortbooks.cpp:15:24: note: in expansion of macro 'tm'
15 | #define rs v << 1 | 1, tm + 1, tr
| ^~
sortbooks.cpp:69:21: note: in expansion of macro 'rs'
69 | else upd(pos, val, rs);
| ^~
sortbooks.cpp: In function 'std::pair<long long int, long long int> get(long long int, long long int, long long int, long long int, long long int)':
sortbooks.cpp:13:16: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
13 | #define tm (tl + tr >> 1)
| ~~~^~~~
sortbooks.cpp:14:24: note: in expansion of macro 'tm'
14 | #define ls v << 1, tl, tm
| ^~
sortbooks.cpp:76:25: note: in expansion of macro 'ls'
76 | return unite(get(l, r, ls), get(l, r, rs));
| ^~
sortbooks.cpp:13:16: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
13 | #define tm (tl + tr >> 1)
| ~~~^~~~
sortbooks.cpp:15:24: note: in expansion of macro 'tm'
15 | #define rs v << 1 | 1, tm + 1, tr
| ^~
sortbooks.cpp:76:40: note: in expansion of macro 'rs'
76 | return unite(get(l, r, ls), get(l, r, rs));
| ^~