needed for heap allocation if variable escapes.
package main
func main(){
var i interface{} = 42;
switch v := i.(type) {
case int:
println(&v, v);
}
}
R=ken
OCL=31245
CL=31245
Node*
typeone(Node *t)
{
- Node *a, *b;
+ Node *a, *b, *dcl;
a = t->left->left; // var
+ dcl = nod(ODCL, a, N);
+
a = nod(OLIST, a, boolname); // var,bool
b = nod(ODOTTYPE, facename, N);
b = nod(OIF, N, N);
b->ntest = boolname;
b->nbody = t->right; // if bool { goto l }
- return list(a, b);
+ return list(list(dcl, a), b);
}
Node*