dSP;
dMY_CXT;
- SV * const cxixsv = POPs;
- const char *cxixpv;
- STRLEN cxixlen;
+ const char * const cxixpv = (char *)&PL_op;
+ STRLEN const cxixlen = sizeof(OP *);
AV *entries;
U32 const gimme = GIMME_V;
SV *patsv = POPs;
bool on_stack = FALSE;
- SvGETMAGIC(cxixsv);
- cxixpv = SvPV_nomg(cxixsv, cxixlen);
-
if (!MY_CXT.x_GLOB_ENTRIES) MY_CXT.x_GLOB_ENTRIES = newHV();
entries = (AV *)*(hv_fetch(MY_CXT.x_GLOB_ENTRIES, cxixpv, cxixlen, 1));
else {
XPUSHs(&PL_sv_undef);
}
- XPUSHs(newSVpvn_flags((char *)&PL_op, sizeof(OP *), SVs_TEMP));
- sv_catpvs(*SP, "_"); /* Avoid conflicts with PL_glob_index */
PUTBACK;
csh_glob_iter(aTHX);
SPAGAIN;
else {
XPUSHs(&PL_sv_undef);
}
- XPUSHs(newSVpvn_flags((char *)&PL_op, sizeof(OP *), SVs_TEMP));
- sv_catpvs(*SP, "_"); /* Avoid conflicts with PL_glob_index */
PUTBACK;
iterate(aTHX_ doglob_iter_wrapper);
SPAGAIN;
gv = (GV *)newSV(0);
gv_init(gv, 0, "", 0, 0);
gv_IOadd(gv);
-#ifndef PERL_EXTERNAL_GLOB
- sv_setiv(GvSVn(gv),PL_glob_index++);
-#endif
op_append_elem(OP_GLOB, o, newGVOP(OP_GV, 0, gv));
SvREFCNT_dec_NN(gv); /* newGVOP increased it */
scalarkids(o);