summaryrefslogtreecommitdiff
path: root/toke.c
diff options
context:
space:
mode:
authorNicholas Clark <nick@ccl4.org>2005-09-18 23:40:46 +0000
committerNicholas Clark <nick@ccl4.org>2005-09-18 23:40:46 +0000
commit26ab6a78adda605ad55978d97dd5c8d4b282375a (patch)
tree457f838a5179bec270deb8c03ab79114c56df0bd /toke.c
parent5f2f4dbeb153fb32f97b9eec41efcf5c3e2f2a81 (diff)
downloadperl-26ab6a78adda605ad55978d97dd5c8d4b282375a.tar.gz
Integrate the API from:
[ 24526] Move hv_name, hv_eiter and hv_riter into a new aux structure. Provide (more efficient) _get and _set macros. Adjust the core to use them. [ 25475] It looks like the only way to reliably make Perl_hv_name_set a pure macro in 5.8.x is to make it available as hv_name_set. [Otherwise when and where aTHX_ hv gets expanded to foo, hv causes warnings or other games when Perl_hv_name_set() is a macro] [ 25476] Should have been embed.h, not proto.h, in 25475 p4raw-link: @25476 on //depot/perl: 840296de2f2802a7ba67f4bd1e075f58ec18c0f4 p4raw-link: @25475 on //depot/perl: 51a37f8016223ef5212790d4185d213114f2fd9b p4raw-link: @24526 on //depot/perl: bfcb351493b9793586f4b514100d4f902a85f4fd p4raw-id: //depot/maint-5.8/perl@25479 p4raw-integrated: from //depot/perl@25478 'edit in' ext/Opcode/Opcode.xs (@25101..) 'merge in' ext/threads/shared/shared.xs (@24248..) p4raw-edited: from //depot/perl@24526 'edit in' hv.c hv.h sv.c (@24525..) p4raw-integrated: from //depot/perl@24526 'copy in' ext/Devel/DProf/DProf.xs (@24170..) 'edit in' pp_sys.c xsutils.c (@24445..) pp_hot.c (@24489..) mg.c perl.c (@24508..) toke.c universal.c (@24509..) gv.c op.c pp.c (@24523..) dump.c (@24525..) 'merge in' op.h (@24106..) ext/Data/Dumper/Dumper.xs (@24271..) ext/PerlIO/via/via.xs (@24476..) ext/Storable/Storable.xs (@24525..)
Diffstat (limited to 'toke.c')
-rw-r--r--toke.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/toke.c b/toke.c
index 7128797bab..097d181d1f 100644
--- a/toke.c
+++ b/toke.c
@@ -4292,7 +4292,7 @@ Perl_yylex(pTHX)
case KEY___PACKAGE__:
yylval.opval = (OP*)newSVOP(OP_CONST, 0,
(PL_curstash
- ? newSVpv(HvNAME(PL_curstash), 0)
+ ? newSVpv(HvNAME_get(PL_curstash), 0)
: &PL_sv_undef));
TERM(THING);
@@ -4304,7 +4304,7 @@ Perl_yylex(pTHX)
if (PL_rsfp && (!PL_in_eval || PL_tokenbuf[2] == 'D')) {
const char *pname = "main";
if (PL_tokenbuf[2] == 'D')
- pname = HvNAME(PL_curstash ? PL_curstash : PL_defstash);
+ pname = HvNAME_get(PL_curstash ? PL_curstash : PL_defstash);
gv = gv_fetchpv(Perl_form(aTHX_ "%s::DATA", pname), TRUE, SVt_PVIO);
GvMULTI_on(gv);
if (!GvIO(gv))
@@ -5490,7 +5490,7 @@ S_pending_ident(pTHX)
/* might be an "our" variable" */
if (PAD_COMPNAME_FLAGS(tmp) & SVpad_OUR) {
/* build ops for a bareword */
- SV *sym = newSVpv(HvNAME(PAD_COMPNAME_OURSTASH(tmp)), 0);
+ SV *sym = newSVpv(HvNAME_get(PAD_COMPNAME_OURSTASH(tmp)), 0);
sv_catpvn(sym, "::", 2);
sv_catpv(sym, PL_tokenbuf+1);
yylval.opval = (OP*)newSVOP(OP_CONST, 0, sym);
@@ -9678,7 +9678,7 @@ S_scan_inputsymbol(pTHX_ char *start)
if ((tmp = pad_findmy(d)) != NOT_IN_PAD) {
if (PAD_COMPNAME_FLAGS(tmp) & SVpad_OUR) {
SV *sym = sv_2mortal(
- newSVpv(HvNAME(PAD_COMPNAME_OURSTASH(tmp)),0));
+ newSVpv(HvNAME_get(PAD_COMPNAME_OURSTASH(tmp)),0));
sv_catpvn(sym, "::", 2);
sv_catpv(sym, d+1);
d = SvPVX(sym);