/in/foo.cc: In member function 'void prt::build(int&, int, int)':
/in/foo.cc:19:12: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
int m=l+r>>1;
~^~
/in/foo.cc: In member function 'void prt::ins(int&, int, int, int, int, node)':
/in/foo.cc:26:12: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
int m=l+r>>1;
~^~
/in/foo.cc: In member function 'node prt::ask(int, int, int, int, int)':
/in/foo.cc:32:12: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
int m=l+r>>1;
~^~
/in/foo.cc: In function 'void ST()':
/in/foo.cc:57:52: warning: suggest parentheses around '-' inside '<<' [-Wparentheses]
st[k][i]=gmd(st[k-1][i],st[k-1][i+(1<<k-1)]);
~^~