go/test: passes 86% (297/343)
R=rsc
APPROVED=rsc
DELTA=14 (10 added, 1 deleted, 3 changed)
OCL=35881
CL=35884
void
afunclit(Addr *a)
{
- if(a->type == D_ADDR && a->name == D_EXTERN || a->type == D_REG) {
+ if(a->type == D_CONST && a->name == D_EXTERN || a->type == D_REG) {
a->type = D_OREG;
}
}
break;
case PFUNC:
a->name = D_EXTERN;
+ a->type = D_CONST;
break;
}
break;
case OADDR:
naddr(n->left, a);
- if(a->type == D_OREG) {
+ switch(a->type) {
+ case D_OREG:
a->type = D_CONST;
break;
- } else if (a->type == D_REG) {
+
+ case D_REG:
+ case D_CONST:
break;
+
+ default:
+ fatal("naddr: OADDR %d\n", a->type);
}
- fatal("naddr: OADDR %d\n", a->type);
}
}
fixedbugs/bug052.go
fixedbugs/bug053.go
fixedbugs/bug054.go
+fixedbugs/bug055.go
fixedbugs/bug056.go
fixedbugs/bug057.go
fixedbugs/bug058.go
ken/intervar.go
ken/label.go
ken/mfunc.go
+ken/ptrfun.go
ken/ptrvar.go
ken/range.go
ken/rob1.go
printbig.go
rename.go
rename1.go
+runtime.go
sieve.go
sigchld.go
simassign.go