/* detach any '&' anon children in the pad; if afterwards they * are still live, fix up their CvOUTSIDEs to point to our outside, * bypassing us. */ /* XXX DAPM for efficiency, we should only do this if we know we have * children, or integrate this loop with general cleanup */ if (!PL_dirty) { /* don't bother during global destruction */ CV *outercv = CvOUTSIDE(cv); U32 seq = CvOUTSIDE_SEQ(cv); AV *comppad_name = (AV*)AvARRAY(padlist)[0]; SV **namepad = AvARRAY(comppad_name); AV *comppad = (AV*)AvARRAY(padlist)[1]; SV **curpad = AvARRAY(comppad); for (ix = AvFILLp(comppad_name); ix > 0; ix--) { SV *namesv = namepad[ix]; if (namesv && namesv != &PL_sv_undef /* DIES HERE */ && *SvPVX(namesv) == '&') {