cmp.cpp: In function 'void remember(int)':
cmp.cpp:8:12: warning: suggest parentheses around '+' in operand of '&' [-Wparentheses]
8 | set_bit(1 + (n >> 10) & 3);
| ~~^~~~~~~~~~~
cmp.cpp:9:12: warning: suggest parentheses around '+' in operand of '&' [-Wparentheses]
9 | set_bit(5 + (n >> 8) & 15);
| ~~^~~~~~~~~~
cmp.cpp:10:13: warning: suggest parentheses around '+' in operand of '&' [-Wparentheses]
10 | set_bit(21 + (n >> 6) & 63);
| ~~~^~~~~~~~~~
cmp.cpp:11:13: warning: suggest parentheses around '+' in operand of '&' [-Wparentheses]
11 | set_bit(85 + (n >> 4) & 255);
| ~~~^~~~~~~~~~
cmp.cpp:12:14: warning: suggest parentheses around '+' in operand of '&' [-Wparentheses]
12 | set_bit(341 + (n >> 2) & 1023);
| ~~~~^~~~~~~~~~
cmp.cpp:13:15: warning: suggest parentheses around '+' in operand of '&' [-Wparentheses]
13 | set_bit(1365 + n & 4095);
| ~~~~~^~~
cmp.cpp: In function 'int compare(int)':
cmp.cpp:30:31: error: 'mid' was not declared in this scope
30 | int tempor = (b >> (12 - 2 * mid)) & 3;
| ^~~