summaryrefslogtreecommitdiff
path: root/scope.c
diff options
context:
space:
mode:
authorLarry Wall <larry@netlabs.com>1993-11-10 00:00:00 +0000
committerLarry Wall <larry@netlabs.com>1993-11-10 00:00:00 +0000
commit463ee0b2acbd047c27e8b5393cdd8398881824c5 (patch)
treeae17d9179fc861ae5fc5a86da9139631530cb6fe /scope.c
parent93a17b20b6d176db3f04f51a63b0a781e5ffd11c (diff)
downloadperl-463ee0b2acbd047c27e8b5393cdd8398881824c5.tar.gz
perl 5.0 alpha 4
[editor's note: the sparc executables have not been included, and emacs backup files have been removed. This was reconstructed from a tarball found on the September 1994 InfoMagic CD; the date of this is approximate]
Diffstat (limited to 'scope.c')
-rw-r--r--scope.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/scope.c b/scope.c
index 7a891c4e42..22b206c46d 100644
--- a/scope.c
+++ b/scope.c
@@ -73,8 +73,12 @@ free_tmps()
while (tmps_ix > myfloor) { /* clean up after last statement */
SV* sv = tmps_stack[tmps_ix];
tmps_stack[tmps_ix--] = Nullsv;
- if (sv)
+ if (sv) {
+#ifdef DEBUGGING
+ SvTEMP_off(sv);
+#endif
sv_free(sv); /* note, can modify tmps_ix!!! */
+ }
}
}
@@ -275,7 +279,7 @@ I32 base;
register void* ptr;
if (base < -1)
- fatal("panic: corrupt saved stack index");
+ croak("panic: corrupt saved stack index");
while (savestack_ix > base) {
switch (SSPOPINT) {
case SAVEt_ITEM: /* normal string */
@@ -312,7 +316,7 @@ I32 base;
case SAVEt_HV: /* hash reference */
hv = (HV*)SSPOPPTR;
gv = (GV*)SSPOPPTR;
- (void)hv_free(GvHV(gv), FALSE);
+ (void)hv_free(GvHV(gv));
GvHV(gv) = hv;
break;
case SAVEt_INT: /* int reference */
@@ -346,7 +350,7 @@ I32 base;
GvGP(gv) = (GP*)ptr;
break;
default:
- fatal("panic: leave_scope inconsistency");
+ croak("panic: leave_scope inconsistency");
}
}
}