X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=op.c;h=7c5587e6d53db33e0f8df3f37d5635d5af648a54;hb=b3ac6de7f0c7a63b73f1cf3ea9e371470f7d1cb0;hp=6d3a6d3177948e863e45fd3e61b7a12456714bc7;hpb=dde527fc6256d3b4a78a8a6187a9b8048cc76da5;p=p5sagit%2Fp5-mst-13.2.git diff --git a/op.c b/op.c index 6d3a6d3..7c5587e 100644 --- a/op.c +++ b/op.c @@ -1518,11 +1518,21 @@ scope(OP *o) return o; } +void +save_hints(void) +{ + SAVEI32(hints); + SAVESPTR(GvHV(hintgv)); + GvHV(hintgv) = newHVhv(GvHV(hintgv)); + SAVEFREESV(GvHV(hintgv)); +} + int block_start(int full) { dTHR; int retval = savestack_ix; + SAVEI32(comppad_name_floor); if (full) { if ((comppad_name_fill = AvFILLp(comppad_name)) > 0) @@ -1537,7 +1547,7 @@ block_start(int full) SAVEI32(padix_floor); padix_floor = padix; pad_reset_pending = FALSE; - SAVEI32(hints); + SAVEHINTS(); hints &= ~HINT_BLOCK_SCOPE; return retval; }