the fix appears to be to align the
out struct on an 8 boundary, but that
is a bit involved.
R=ken
OCL=24657
CL=24657
&& structnext(&peekl) != T
&& listnext(&peekr) == N
&& eqtypenoname(r->type, *nl)) {
+ // clumsy check for differently aligned structs.
+ // need to handle eventually, but this keeps us
+ // from inserting bugs
+ if(r->type->width != (*nl)->width)
+ yyerror("misaligned multiple return (6g's fault)");
a = nodarg(*nl, fp);
a->type = r->type;
return convas(nod(OAS, a, r));