if (SvRMAGICAL(av)) {
const MAGIC * const tied_magic = mg_find((SV *) av, PERL_MAGIC_tied);
if (tied_magic) {
- int adjust_index = 1;
SV * const * const negative_indices_glob =
hv_fetch(SvSTASH(SvRV(SvTIED_obj((SV *) (av), tied_magic))),
NEGATIVE_INDICES_VAR, 16, 0);
if (val) { /* local $x{$keysv} = $val; */
SvSetMagicSV(*svp, val);
} else { /* local $x{$keysv}; delete $x{$keysv}; */
- hv_delete_ent(hv, keysv, G_DISCARD, HeHASH(he));
+ (void)hv_delete_ent(hv, keysv, G_DISCARD, HeHASH(he));
}
}
* when the new sub scope will be created in call_sv. */
#if SU_HAS_PERL(5, 10, 0)
- if (dieing)
+ if (dieing) {
if (cxstack_ix < cxstack_max)
++cxstack_ix;
else
cxstack_ix = Perl_cxinc(aTHX);
+ }
#endif
call_sv(ud->cb, G_VOID);
break;
default:
gv = (GV *) save_scalar(gv);
-maybe_deref:
if (deref) /* val != NULL */
val = SvRV(val);
break;
STATIC I32 su_init(pTHX_ I32 cxix, void *ud, I32 size) {
#define su_init(L, U, S) su_init(aTHX_ (L), (U), (S))
I32 i, depth = 0, *origin;
- I32 cur, last, step;
LEAVE;
SV **savesp = MY_CXT.savesp;
I32 mark;
+ PERL_UNUSED_VAR(ud_);
+
if (savesp)
PL_stack_sp = savesp;
if (CxTYPE(cx) == CXt_BLOCK && (C) >= i) { \
--cx; \
if (CxTYPE(cx) == CXt_SUB && cx->blk_sub.cv == GvCV(PL_DBsub)) { \
- (C) -= i + 1; \
- break; \
- } \
- } else \
- break; \
+ (C) -= i + 1; \
+ break; \
+ } \
+ } else \
+ break; \
} while (++i <= SU_SKIP_DB_MAX); \
} STMT_END
newXSproto("Scope::Upper::unwind", XS_Scope__Upper_unwind, file, NULL);
}
+#if SU_THREADSAFE
+
void
CLONE(...)
PROTOTYPE: DISABLE
CODE:
-#if SU_THREADSAFE
+ PERL_UNUSED_VAR(items);
MY_CXT_CLONE;
+
#endif /* SU_THREADSAFE */
SV *