#ifdef gv_fetchsv
gv = gv_fetchsv(sv, GV_ADDMULTI, t);
#else
- STRLEN len;
- const char *name = SvPV_const(sv, len);
- gv = gv_fetchpvn_flags(name, len, GV_ADDMULTI, t);
+ {
+ STRLEN len;
+ const char *name = SvPV_const(sv, len);
+ gv = gv_fetchpvn_flags(name, len, GV_ADDMULTI, t);
+ }
#endif
+
#if SU_HAS_NEW_CXT
CX_CUR()->blk_oldcop = old_cop;
#endif
#define SU_CXNAME(C) SU_CX_TYPENAME(CxTYPE(C))
+#if XSH_DEBUG
+
/* for debugging. These indicate how many ENTERs each context type
* does before the PUSHBLOCK */
# endif
};
+#endif /* XSH_DEBUG */
+
/* push at least 'size' slots worth of padding onto the savestack */
static void su_ss_push_padding(pTHX_ void *ud, I32 size) {
static void su_ss_push_destructor(pTHX_ void *ud, I32 depth, bool first) {
su_ud_origin_elem *origin = SU_UD_ORIGIN(ud);
- I32 pad;
assert(first || origin[depth+1].orig_ix == PL_savestack_ix);
su_ss_push_padding(aTHX_ ud,
static void su_init(pTHX_ void *ud, I32 cxix, I32 size) {
#define su_init(U, C, S) su_init(aTHX_ (U), (C), (S))
- I32 i, depth, base;
+ I32 i, depth;
su_ud_origin_elem *origin;
I32 cur_cx_ix;
I32 cur_scope_ix;