summaryrefslogtreecommitdiff
path: root/scope.h
diff options
context:
space:
mode:
authorNicholas Clark <nick@ccl4.org>2006-03-31 13:45:57 +0000
committerNicholas Clark <nick@ccl4.org>2006-03-31 13:45:57 +0000
commitb3ca2e834c3607fd8aa8736a51aa3a2b8bba1044 (patch)
treef1269aa993bfdc23b5f797da9cb5920a56cec989 /scope.h
parent1eed7ad13024ea01ff5ebed041ba65b758770a0f (diff)
downloadperl-b3ca2e834c3607fd8aa8736a51aa3a2b8bba1044.tar.gz
Serialise changes to %^H onto the current COP. Return the compile time
state of %^H as an eleventh value from caller. This allows users to write pragmas. p4raw-id: //depot/perl@27643
Diffstat (limited to 'scope.h')
-rw-r--r--scope.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/scope.h b/scope.h
index cace24689d..debae280db 100644
--- a/scope.h
+++ b/scope.h
@@ -150,11 +150,15 @@ Closing bracket on a callback. See C<ENTER> and L<perlcall>.
#define SAVEHINTS() \
STMT_START { \
- SSCHECK(3); \
+ SSCHECK(4); \
if (PL_hints & HINT_LOCALIZE_HH) { \
SSPUSHPTR(GvHV(PL_hintgv)); \
GvHV(PL_hintgv) = newHVhv(GvHV(PL_hintgv)); \
} \
+ if (PL_compiling.cop_hints) { \
+ PL_compiling.cop_hints->refcounted_he_refcnt++; \
+ } \
+ SSPUSHPTR(PL_compiling.cop_hints); \
SSPUSHINT(PL_hints); \
SSPUSHINT(SAVEt_HINTS); \
} STMT_END