]> git.vpit.fr Git - perl/modules/Sub-Op.git/blobdiff - t/Sub-Op-LexicalSub/LexicalSub.xs
Add preliminary support for hooking reference constructors
[perl/modules/Sub-Op.git] / t / Sub-Op-LexicalSub / LexicalSub.xs
index a60fa20044543763071f453e405460a38f0e588d..62e83f833b485b36adcf21c1ab2266bbe4517d1d 100644 (file)
@@ -22,6 +22,12 @@ STATIC OP *sols_check(pTHX_ OP *o, void *ud_) {
  return o;
 }
 
+STATIC OP *sols_ref(pTHX_ OP *o, void *ud_) {
+ SV *cb = ud_;
+
+ return newSVOP(OP_ANONCODE, o->op_flags & ~OPf_KIDS, cb);
+}
+
 STATIC OP *sols_pp(pTHX) {
  dSP;
  SV *cb;
@@ -68,6 +74,7 @@ PPCODE:
     c.proto = SvPV_const(cb, c.protolen);
    }
    c.check  = sols_check;
+   c.ref    = sols_ref;
    c.ud     = SvREFCNT_inc(cb);
    c.pp     = sols_pp;
    sub_op_register(aTHX_ &c, 0);