# define SvMAGIC_set(sv, val) (SvMAGIC(sv) = (val))
#endif
+#ifndef SvRV_const
+# define SvRV_const(sv) SvRV((SV *) sv)
+#endif
+
#ifndef mPUSHu
# define mPUSHu(U) PUSHs(sv_2mortal(newSVuv(U)))
#endif
STATIC const SV *vmg_wizard_validate(pTHX_ const SV *wiz) {
#define vmg_wizard_validate(W) vmg_wizard_validate(aTHX_ (W))
if (SvROK(wiz)) {
- wiz = SvRV(wiz);
+ wiz = SvRV_const(wiz);
if (SvIOK(wiz))
return wiz;
}
PUSHs(mg->mg_obj ? mg->mg_obj : &PL_sv_undef);
if (t < SVt_PVAV) {
STRLEN l;
-#if VMG_HAS_PERL(5, 9, 2)
+#if VMG_HAS_PERL(5, 9, 3)
const U8 *s = SvPV_const(sv, l);
#else
U8 *s = SvPV(sv, l);