summaryrefslogtreecommitdiff
path: root/pp.c
diff options
context:
space:
mode:
authorFather Chrysostomos <sprout@cpan.org>2012-07-07 12:18:49 -0700
committerFather Chrysostomos <sprout@cpan.org>2012-09-15 22:44:59 -0700
commit97b03d64e557578d3dbfeb6e6ca37ba57d57e858 (patch)
treeffef190d8a1cf537077bcad35b6fbfb8db0c8e27 /pp.c
parent214522520758f1a3f2cb4a43383c4d90400c9604 (diff)
downloadperl-97b03d64e557578d3dbfeb6e6ca37ba57d57e858.tar.gz
Implement padcv
State subs can now be referenced and called. Most of the tests in lexsub.t are now passing. I noticed mistakes in a couple of the tests and corrected them. In doing so I got an assertion failure during compilation, so the tests in question I wrapped in a skipped string eval. State subs are now mostly working, but there are a few things to clean up still.
Diffstat (limited to 'pp.c')
-rw-r--r--pp.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/pp.c b/pp.c
index 0c62faede7..00b28aee41 100644
--- a/pp.c
+++ b/pp.c
@@ -146,7 +146,10 @@ PP(pp_padhv)
PP(pp_padcv)
{
- DIE(aTHX_ "panic: padcv");
+ dVAR; dSP; dTARGET;
+ assert(SvTYPE(TARG) == SVt_PVCV);
+ XPUSHs(TARG);
+ RETURN;
}
/* Translations. */