summaryrefslogtreecommitdiff
path: root/pad.h
diff options
context:
space:
mode:
authorNicholas Clark <nick@ccl4.org>2008-10-27 21:23:04 +0000
committerDavid Mitchell <davem@iabyn.com>2009-03-29 21:51:04 +0100
commitbd9a69e86d2937c1c7cd62289e6875e6921f7d05 (patch)
tree33b2ed379c1560e8a7cd2ded29c87d44e5c2c728 /pad.h
parent2a753ebd90d8f342ca7409921609457115214669 (diff)
downloadperl-bd9a69e86d2937c1c7cd62289e6875e6921f7d05.tar.gz
Add MUTABLE_AV(), and remove (AV *) casts from headers.
p4raw-id: //depot/perl@34608 (cherry picked from commit a062e10d14f53c3718ae4dbf13be27233d85afcc)
Diffstat (limited to 'pad.h')
-rw-r--r--pad.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/pad.h b/pad.h
index 2f0fb7c7d1..10e094eef2 100644
--- a/pad.h
+++ b/pad.h
@@ -210,7 +210,7 @@ Restore the old pad saved into the local variable opad by PAD_SAVE_LOCAL()
#define PAD_BASE_SV(padlist, po) \
(AvARRAY(padlist)[1]) \
- ? AvARRAY((AV*)(AvARRAY(padlist)[1]))[po] : NULL;
+ ? AvARRAY(MUTABLE_AV((AvARRAY(padlist)[1])))[po] : NULL;
#define PAD_SET_CUR_NOSAVE(padlist,nth) \
@@ -258,7 +258,7 @@ context block structure (can be used as an lvalue).
*/
#define CX_CURPAD_SAVE(block) (block).oldcomppad = PL_comppad
-#define CX_CURPAD_SV(block,po) (AvARRAY((AV*)((block).oldcomppad))[po])
+#define CX_CURPAD_SV(block,po) (AvARRAY(MUTABLE_AV(((block).oldcomppad)))[po])
/*
@@ -337,7 +337,7 @@ Clone the state variables associated with running and compiling pads.
* sub's CV or padlist. */
#define PAD_CLONE_VARS(proto_perl, param) \
- PL_comppad = (AV *) ptr_table_fetch(PL_ptr_table, proto_perl->Icomppad); \
+ PL_comppad = MUTABLE_AV(ptr_table_fetch(PL_ptr_table, proto_perl->Icomppad)); \
PL_curpad = PL_comppad ? AvARRAY(PL_comppad) : NULL; \
PL_comppad_name = av_dup(proto_perl->Icomppad_name, param); \
PL_comppad_name_fill = proto_perl->Icomppad_name_fill; \