summaryrefslogtreecommitdiff
path: root/pp.h
diff options
context:
space:
mode:
authorLarry Wall <larry@netlabs.com>1994-03-18 00:00:00 +0000
committerLarry Wall <larry@netlabs.com>1994-03-18 00:00:00 +0000
commit8990e3071044a96302560bbdb5706f3e74cf1bef (patch)
tree6cf4a58108544204591f25bd2d4f1801d49334b4 /pp.h
parented6116ce9b9d13712ea252ee248b0400653db7f9 (diff)
downloadperl-8990e3071044a96302560bbdb5706f3e74cf1bef.tar.gz
perl 5.0 alpha 6
[editor's note: cleaned up from the September '94 InfoMagic CD, just like the last commit]
Diffstat (limited to 'pp.h')
-rw-r--r--pp.h13
1 files changed, 9 insertions, 4 deletions
diff --git a/pp.h b/pp.h
index d6a1c4c77f..84ca50fcc8 100644
--- a/pp.h
+++ b/pp.h
@@ -83,18 +83,18 @@
/* Go to some pains in the rare event that we must extend the stack. */
#define EXTEND(p,n) do { if (stack_max - p < (n)) { \
- av_fill(stack, (p - stack_base) + (n)); \
+ av_fill(stack, (p - stack_base) + (n) + 128); \
sp = AvARRAY(stack) + (sp - stack_base); \
stack_base = AvARRAY(stack); \
- stack_max = stack_base + AvMAX(stack); \
+ stack_max = stack_base + AvMAX(stack) - 1; \
} } while (0)
/* Same thing, but update mark register too. */
#define MEXTEND(p,n) do {if (stack_max - p < (n)) { \
- av_fill(stack, (p - stack_base) + (n)); \
+ av_fill(stack, (p - stack_base) + (n) + 128); \
sp = AvARRAY(stack) + (sp - stack_base); \
mark = AvARRAY(stack) + (mark - stack_base); \
stack_base = AvARRAY(stack); \
- stack_max = stack_base + AvMAX(stack); \
+ stack_max = stack_base + AvMAX(stack) - 1; \
} } while (0)
#define PUSHs(s) (*++sp = (s))
@@ -169,3 +169,8 @@
#define SAVELONG(l) save_int((long*)(&l));
#define SAVESPTR(s) save_sptr((SV**)(&s))
#define SAVETMPS save_int(&tmps_floor), tmps_floor = tmps_ix
+#define SAVEFREESV(s) save_freesv((SV*)(s))
+#define SAVEFREEOP(o) save_freeop((OP*)(o))
+#define SAVEFREEPV(p) save_freepv((char*)(p))
+#define SAVECLEARSV(sv) save_clearsv((SV**)(&sv))
+#define SAVEDELETE(h,k,l) save_delete((HV*)(h), (char*)(k), (I32)l)