#endif
val = ptable_fetch(a_op_map, o);
- if (val) {
- *oi = *val;
- val = oi;
- } else
- oi->old_pp = 0;
+ *oi = *val;
#ifdef USE_ITHREADS
MUTEX_UNLOCK(&a_op_map_mutex);
/* ... pp_deref (aelem,helem,rv2sv,padsv) .................................. */
-STATIC const char a_msg_forbidden[] = "Reference vivification forbidden";
-STATIC const char a_msg_impossible[] = "Can't vivify reference";
-
STATIC OP *a_pp_deref(pTHX) {
a_op_info oi;
UV flags;
SPAGAIN;
if (!SvOK(TOPs)) {
if (flags & A_HINT_STRICT)
- croak(a_msg_forbidden);
+ croak("Reference vivification forbidden");
else if (flags & A_HINT_WARN)
- warn(a_msg_forbidden);
+ warn("Reference was vivified");
else /* A_HINT_STORE */
- croak(a_msg_impossible);
+ croak("Can't vivify reference");
}
}
return o;
}
-/* ... ck_root (exists,delete) ............................................. */
+/* ... ck_root (exists,delete,keys,values) ................................. */
STATIC OP *(*a_old_ck_exists)(pTHX_ OP *) = 0;
STATIC OP *(*a_old_ck_delete)(pTHX_ OP *) = 0;