in.diff 1.1KB

12345678910111213141516171819202122232425262728293031323334353637
  1. Index: patch-Alias.xs
  2. ===================================================================
  3. --- patch-Alias.xs (revision 384635)
  4. +++ patch-Alias.xs (revision 384636)
  5. @@ -140,17 +140,21 @@
  6. tmp = kLISTOP->op_first;
  7. if (inside)
  8. op_null(tmp);
  9. -@@ -2001,6 +2035,9 @@ STATIC OP *da_ck_entersub(pTHX_ OP *o) {
  10. +@@ -2001,6 +2035,13 @@ STATIC OP *da_ck_entersub(pTHX_ OP *o) {
  11. while (kid->op_sibling != last)
  12. kid = kid->op_sibling;
  13. kid->op_sibling = Nullop;
  14. +#ifdef op_sibling_splice
  15. ++#if (PERL_COMBI_VERSION >= 5021011)
  16. ++ kid->op_moresib = 0;
  17. ++#else
  18. + kid->op_lastsib = 1;
  19. +#endif
  20. ++#endif
  21. cLISTOPx(cUNOPo->op_first)->op_last = kid;
  22. if (kid->op_type == OP_NULL && inside)
  23. kid->op_flags &= ~OPf_SPECIAL;
  24. -@@ -2008,6 +2045,14 @@ STATIC OP *da_ck_entersub(pTHX_ OP *o) {
  25. +@@ -2008,6 +2049,14 @@ STATIC OP *da_ck_entersub(pTHX_ OP *o) {
  26. return o;
  27. }
  28. @@ -165,7 +169,7 @@
  29. MODULE = Data::Alias PACKAGE = Data::Alias
  30. -@@ -2025,6 +2070,10 @@ BOOT:
  31. +@@ -2025,6 +2074,10 @@ BOOT:
  32. PL_check[OP_RV2CV] = da_ck_rv2cv;
  33. da_old_ck_entersub = PL_check[OP_ENTERSUB];
  34. PL_check[OP_ENTERSUB] = da_ck_entersub;