which will allow the storage location to be changed.
p4raw-id: //depot/perl@33034
rxres_save(&cx->sb_rxres, rx); \
(void)ReREFCNT_inc(rx)
+#define CxONCE(cx) (0 + cx->sb_once)
+
#define POPSUBST(cx) cx = &cxstack[cxstack_ix--]; \
rxres_free(&cx->sb_rxres); \
ReREFCNT_dec(cx->sb_rx)
FREETMPS; /* Prevent excess tmp stack */
/* Are we done */
- if (cx->sb_once || !CALLREGEXEC(rx, s, cx->sb_strend, orig,
+ if (CxONCE(cx) || !CALLREGEXEC(rx, s, cx->sb_strend, orig,
s == m, cx->sb_targ, NULL,
((cx->sb_rflags & REXEC_COPY_STR)
? (REXEC_IGNOREPOS|REXEC_NOT_FIRST)
PerlIO_printf(Perl_debug_log, "SB_RFLAGS = %ld\n",
(long)cx->sb_rflags);
PerlIO_printf(Perl_debug_log, "SB_ONCE = %ld\n",
- (long)cx->sb_once);
+ (long)CxONCE(cx));
PerlIO_printf(Perl_debug_log, "SB_ORIG = %s\n",
cx->sb_orig);
PerlIO_printf(Perl_debug_log, "SB_DSTR = 0x%"UVxf"\n",