Change 25393 by [EMAIL PROTECTED] on 2005/09/12 20:49:01
Run regen.pl after
Integrate:
[ 24277]
Subject: [PATCH] bytecode.pl, bytecode.h, and sv.h fixes
From: Steve Peters <[EMAIL PROTECTED]>
Date: Thu, 21 Apr 2005 18:55:47 -0500
Message-ID: <[EMAIL PROTECTED]>
Affected files ...
... //depot/maint-5.8/perl/bytecode.pl#14 integrate
... //depot/maint-5.8/perl/ext/ByteLoader/bytecode.h#7 integrate
... //depot/maint-5.8/perl/ext/ByteLoader/byterun.c#9 edit
... //depot/maint-5.8/perl/pod/perlintern.pod#14 edit
Differences ...
==== //depot/maint-5.8/perl/bytecode.pl#14 (text) ====
Index: perl/bytecode.pl
--- perl/bytecode.pl#13~25392~ Mon Sep 12 13:12:10 2005
+++ perl/bytecode.pl Mon Sep 12 13:49:01 2005
@@ -422,7 +422,7 @@
mg_flags SvMAGIC(bstate->bs_sv)->mg_flags U8
mg_name SvMAGIC(bstate->bs_sv) pvcontents
x
mg_namex SvMAGIC(bstate->bs_sv) svindex x
-xmg_stash bstate->bs_sv svindex X
+xmg_stash bstate->bs_sv svindex x
gv_fetchpv bstate->bs_sv strconst x
gv_fetchpvx bstate->bs_sv strconst x
gv_stashpv bstate->bs_sv strconst x
==== //depot/maint-5.8/perl/ext/ByteLoader/bytecode.h#7 (text) ====
Index: perl/ext/ByteLoader/bytecode.h
--- perl/ext/ByteLoader/bytecode.h#6~25392~ Mon Sep 12 13:12:10 2005
+++ perl/ext/ByteLoader/bytecode.h Mon Sep 12 13:49:01 2005
@@ -126,7 +126,7 @@
#define BSET_mg_namex(mg, arg) \
(mg->mg_ptr = (char*)SvREFCNT_inc((SV*)arg), \
mg->mg_len = HEf_SVKEY)
-#define BSET_xmg_stash(sv, arg) SvSTASH_set(sv, arg)
+#define BSET_xmg_stash(sv, arg) *(SV**)&(((XPVMG*)SvANY(sv))->xmg_stash) =
(arg)
#define BSET_sv_upgrade(sv, arg) (void)SvUPGRADE(sv, arg)
#define BSET_xrv(sv, arg) SvRV_set(sv, arg)
#define BSET_xpv(sv) do { \
==== //depot/maint-5.8/perl/ext/ByteLoader/byterun.c#9 (text+w) ====
Index: perl/ext/ByteLoader/byterun.c
--- perl/ext/ByteLoader/byterun.c#8~25390~ Mon Sep 12 09:18:42 2005
+++ perl/ext/ByteLoader/byterun.c Mon Sep 12 13:49:01 2005
@@ -216,7 +216,7 @@
{
svindex arg;
BGET_svindex(arg);
- SvRV(bstate->bs_sv) = arg;
+ BSET_xrv(bstate->bs_sv, arg);
break;
}
case INSN_XPV: /* 22 */
@@ -228,28 +228,28 @@
{
STRLEN arg;
BGET_PADOFFSET(arg);
- SvCUR(bstate->bs_sv) = arg;
+ BSET_xpv_cur(bstate->bs_sv, arg);
break;
}
case INSN_XPV_LEN: /* 24 */
{
STRLEN arg;
BGET_PADOFFSET(arg);
- SvLEN(bstate->bs_sv) = arg;
+ BSET_xpv_len(bstate->bs_sv, arg);
break;
}
case INSN_XIV: /* 25 */
{
IV arg;
BGET_IV(arg);
- SvIV_set(bstate->bs_sv, arg);
+ BSET_xiv(bstate->bs_sv, arg);
break;
}
case INSN_XNV: /* 26 */
{
NV arg;
BGET_NV(arg);
- SvNV_set(bstate->bs_sv, arg);
+ BSET_xnv(bstate->bs_sv, arg);
break;
}
case INSN_XLV_TARGOFF: /* 27 */
@@ -592,7 +592,7 @@
{
svindex arg;
BGET_svindex(arg);
- *(SV**)&SvSTASH(bstate->bs_sv) = arg;
+ BSET_xmg_stash(bstate->bs_sv, arg);
break;
}
case INSN_GV_FETCHPV: /* 77 */
==== //depot/maint-5.8/perl/pod/perlintern.pod#14 (text+w) ====
Index: perl/pod/perlintern.pod
--- perl/pod/perlintern.pod#13~25372~ Sat Sep 10 09:33:56 2005
+++ perl/pod/perlintern.pod Mon Sep 12 13:49:01 2005
@@ -135,6 +135,16 @@
=for hackers
Found in file pad.h
+=item PAD_COMPNAME_GEN_set
+
+Sets the generation number of the name at offset C<po> in the current
+ling pad (lvalue) to C<gen>. Note that C<SvCUR_set> is hijacked for this
purpose.
+
+ STRLEN PAD_COMPNAME_GEN_set(PADOFFSET po, int gen)
+
+=for hackers
+Found in file pad.h
+
=item PAD_COMPNAME_OURSTASH
Return the stash associated with an C<our> variable.
End of Patch.