R=r
OCL=17853
CL=17853
This commit is contained in:
Ken Thompson 2008-10-25 14:24:51 -07:00
parent 6d3d56d55a
commit a3cdd2e802
1 changed files with 4 additions and 0 deletions

View File

@ -2586,12 +2586,15 @@ expandmeth(Sym *s, Type *t)
if(t == T)
return;
//print("s=%S t=%lT\n", s, t);
// generate all reachable methods
slist = nil;
expand1(t, nelem(dotlist)-1);
// check each method to be uniquely reachable
for(sl=slist; sl!=nil; sl=sl->link) {
sl->field->sym->uniq = 0;
for(d=0; d<nelem(dotlist); d++) {
c = adddot1(sl->field->sym, t, d);
if(c == 0)
@ -2604,6 +2607,7 @@ expandmeth(Sym *s, Type *t)
for(sl=slist; sl!=nil; sl=sl->link) {
if(sl->good) {
//print(" %lT\n", sl->field);
// add it to the base type method list
f = typ(TFIELD);
*f = *sl->field;