/in/foo.cc: In function 'void Euler()':
/in/foo.cc:2:35: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
#define rep(i,l,r) for(int i=(l);i<=(r);i++)
^
/in/foo.cc:8:2: note: in expansion of macro 'rep'
rep(i,2,n){
^~~
/in/foo.cc:2:35: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
#define rep(i,l,r) for(int i=(l);i<=(r);i++)
^
/in/foo.cc:13:3: note: in expansion of macro 'rep'
rep(j,1,len){
^~~
/in/foo.cc: In function 'void split(int)':
/in/foo.cc:2:35: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
#define rep(i,l,r) for(int i=(l);i<=(r);i++)
^
/in/foo.cc:20:2: note: in expansion of macro 'rep'
rep(i,1,len){
^~~
/in/foo.cc:21:23: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
if(prime[i]*prime[i]>a) break;
~~~~~~~~~~~~~~~~~^~
/in/foo.cc: In function 'int main()':
/in/foo.cc:2:35: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
#define rep(i,l,r) for(int i=(l);i<=(r);i++)
^
/in/foo.cc:34:2: note: in expansion of macro 'rep'
rep(i,1,n) split(i);
^~~
/in/foo.cc:2:35: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
#define rep(i,l,r) for(int i=(l);i<=(r);i++)
^
/in/foo.cc:36:2: note: in expansion of macro 'rep'
rep(i,1,n) ans=(ans*(cnt[i]*2+1))%mod;
^~~