// Test whether extra proc-points are generated // by a label after a call such as with a heap check, // but where the return signature is different. // The extra proc-point should be generated in this case. foo1 () { bits32 p, q; bits32 x, y, z; (p, q) = foreign "C--" bar(1, 2) "safe"; L: if (Hp < HpLim) { (p) = foreign "C--" do_gc() "safe"; goto L; } return (p+q+x+y+z); }