/in/foo.cc: In function 'int main()':
/in/foo.cc:14:28: error: reference to 'rank' is ambiguous
for(int i=1,x,y;i<=n;i++) rank[x=sa[i]]=s[x]>s[y=sa[i-1]]?i:rank[y];
^~~~
/in/foo.cc:6:13: note: candidates are: int rank [200001]
int n,sa[N],rank[N],tem[N],ke1[N],ke2[N],fir[N],nex[N];
^~~~
In file included from /usr/include/c++/6/bits/move.h:57:0,
from /usr/include/c++/6/bits/stl_pair.h:59,
from /usr/include/c++/6/utility:70,
from /usr/include/c++/6/algorithm:60,
from /in/foo.cc:3:
/usr/include/c++/6/type_traits:1482:12: note: template<class> struct std::rank
struct rank
^~~~
/in/foo.cc:14:62: error: reference to 'rank' is ambiguous
for(int i=1,x,y;i<=n;i++) rank[x=sa[i]]=s[x]>s[y=sa[i-1]]?i:rank[y];
^~~~
/in/foo.cc:6:13: note: candidates are: int rank [200001]
int n,sa[N],rank[N],tem[N],ke1[N],ke2[N],fir[N],nex[N];
^~~~
In file included from /usr/include/c++/6/bits/move.h:57:0,
from /usr/include/c++/6/bits/stl_pair.h:59,
from /usr/include/c++/6/utility:70,
from /usr/include/c++/6/algorithm:60,
from /in/foo.cc:3:
/usr/include/c++/6/type_traits:1482:12: note: template<class> struct std::rank
struct rank
^~~~
/in/foo.cc:16:32: error: reference to 'rank' is ambiguous
for(int i=1;i<=n;i++) ke1[i]=rank[i],ke2[i]=i+l>n?0:rank[i+l];
^~~~
/in/foo.cc:6:13: note: candidates are: int rank [200001]
int n,sa[N],rank[N],tem[N],ke1[N],ke2[N],fir[N],nex[N];
^~~~
In file included from /usr/include/c++/6/bits/move.h:57:0,
from /usr/include/c++/6/bits/stl_pair.h:59,
from /usr/include/c++/6/utility:70,
from /usr/include/c++/6/algorithm:60,
from /in/foo.cc:3:
/usr/include/c++/6/type_traits:1482:12: note: template<class> struct std::rank
struct rank
^~~~
/in/foo.cc:16:55: error: reference to 'rank' is ambiguous
for(int i=1;i<=n;i++) ke1[i]=rank[i],ke2[i]=i+l>n?0:rank[i+l];
^~~~
/in/foo.cc:6:13: note: candidates are: int rank [200001]
int n,sa[N],rank[N],tem[N],ke1[N],ke2[N],fir[N],nex[N];
^~~~
In file included from /usr/include/c++/6/bits/move.h:57:0,
from /usr/include/c++/6/bits/stl_pair.h:59,
from /usr/include/c++/6/utility:70,
from /usr/include/c++/6/algorithm:60,
from /in/foo.cc:3:
/usr/include/c++/6/type_traits:1482:12: note: template<class> struct std::rank
struct rank
^~~~
/in/foo.cc:26:22: warning: operation on 'x' may be undefined [-Wsequence-point]
if(ke1[y=x]!=ke1[x=sa[i]]||ke2[y]!=ke2[x]) rank[x]=i;
~^~~~~~
/in/foo.cc:26:47: error: reference to 'rank' is ambiguous
if(ke1[y=x]!=ke1[x=sa[i]]||ke2[y]!=ke2[x]) rank[x]=i;
^~~~
/in/foo.cc:6:13: note: candidates are: int rank [200001]
int n,sa[N],rank[N],tem[N],ke1[N],ke2[N],fir[N],nex[N];
^~~~
In file included from /usr/include/c++/6/bits/move.h:57:0,
from /usr/include/c++/6/bits/stl_pair.h:59,
from /usr/include/c++/6/utility:70,
from /usr/include/c++/6/algorithm:60,
from /in/foo.cc:3:
/usr/include/c++/6/type_traits:1482:12: note: template<class> struct std::rank
struct rank
^~~~
/in/foo.cc:27:9: error: reference to 'rank' is ambiguous
else rank[x]=rank[y],fla=1;
^~~~
/in/foo.cc:6:13: note: candidates are: int rank [200001]
int n,sa[N],rank[N],tem[N],ke1[N],ke2[N],fir[N],nex[N];
^~~~
In file included from /usr/include/c++/6/bits/move.h:57:0,
from /usr/include/c++/6/bits/stl_pair.h:59,
from /usr/include/c++/6/utility:70,
from /usr/include/c++/6/algorithm:60,
from /in/foo.cc:3:
/usr/include/c++/6/type_traits:1482:12: note: template<class> struct std::rank
struct rank
^~~~
/in/foo.cc:27:17: error: reference to 'rank' is ambiguous
else rank[x]=rank[y],fla=1;
^~~~
/in/foo.cc:6:13: note: candidates are: int rank [200001]
int n,sa[N],rank[N],tem[N],ke1[N],ke2[N],fir[N],nex[N];
^~~~
In file included from /usr/include/c++/6/bits/move.h:57:0,
from /usr/include/c++/6/bits/stl_pair.h:59,
from /usr/include/c++/6/utility:70,
from /usr/include/c++/6/algorithm:60,
from /in/foo.cc:3:
/usr/include/c++/6/type_traits:1482:12: note: template<class> struct std::rank
struct rank
^~~~