diff options
author | Chip Salzenberg <chip@atlantic.net> | 1996-12-26 13:07:14 +1200 |
---|---|---|
committer | Chip Salzenberg <chip@atlantic.net> | 1996-12-28 06:22:00 +1200 |
commit | 07055b4c536e012d70aa7099a086192fbb14e918 (patch) | |
tree | 3e0a87f4a64a30f336a29f23aba7fd2aac1b1e58 /pp_ctl.c | |
parent | 39035d0c756b3e78a63763b830ba26854e6124f8 (diff) | |
download | perl-07055b4c536e012d70aa7099a086192fbb14e918.tar.gz |
Support named closures
Diffstat (limited to 'pp_ctl.c')
-rw-r--r-- | pp_ctl.c | 4 |
1 files changed, 3 insertions, 1 deletions
@@ -1926,7 +1926,7 @@ int gimme; SAVESPTR(compcv); compcv = (CV*)NEWSV(1104,0); sv_upgrade((SV *)compcv, SVt_PVCV); - CvOUTSIDE(compcv) = (CV*)SvREFCNT_inc(caller); + CvUNIQUE_on(compcv); comppad = newAV(); comppad_name = newAV(); @@ -1941,6 +1941,8 @@ int gimme; av_store(comppadlist, 0, (SV*)comppad_name); av_store(comppadlist, 1, (SV*)comppad); CvPADLIST(compcv) = comppadlist; + CvOUTSIDE(compcv) = (CV*)SvREFCNT_inc(caller); + SAVEFREESV(compcv); /* make sure we compile in the right package */ |