summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFather Chrysostomos <sprout@cpan.org>2010-11-18 21:30:52 -0800
committerFather Chrysostomos <sprout@cpan.org>2010-11-20 18:15:13 -0800
commit8581adba64260d29041e9d7dc923a10b2ab2424f (patch)
tree1b1ca728e0bcf136d8bc77a5e3cbebab0ebaf950
parent4c2bfb4f71321bcaebd7aa164447958a33081791 (diff)
downloadperl-8581adba64260d29041e9d7dc923a10b2ab2424f.tar.gz
hv_undef .= _flags
Add flags param to hv_undef. There is no mathom, as the changes that this will support are by no means suitable for maint.
-rw-r--r--embed.fnc3
-rw-r--r--embed.h1
-rw-r--r--global.sym2
-rw-r--r--hv.c2
-rw-r--r--hv.h1
-rw-r--r--proto.h3
6 files changed, 7 insertions, 5 deletions
diff --git a/embed.fnc b/embed.fnc
index 1d89b96332..51629915e6 100644
--- a/embed.fnc
+++ b/embed.fnc
@@ -505,7 +505,8 @@ Abmd |HE* |hv_store_ent |NULLOK HV *hv|NULLOK SV *key|NULLOK SV *val\
|U32 hash
AbmM |SV** |hv_store_flags |NULLOK HV *hv|NULLOK const char *key \
|I32 klen|NULLOK SV *val|U32 hash|int flags
-Apd |void |hv_undef |NULLOK HV *hv
+Amd |void |hv_undef |NULLOK HV *hv
+poX |void |hv_undef_flags |NULLOK HV *hv|U32 flags
Am |I32 |ibcmp |NN const char* a|NN const char* b|I32 len
AnpP |I32 |foldEQ |NN const char* a|NN const char* b|I32 len
Am |I32 |ibcmp_locale |NN const char* a|NN const char* b|I32 len
diff --git a/embed.h b/embed.h
index 42515dfd34..75162823e0 100644
--- a/embed.h
+++ b/embed.h
@@ -196,7 +196,6 @@
#define hv_ksplit(a,b) Perl_hv_ksplit(aTHX_ a,b)
#define hv_name_set(a,b,c,d) Perl_hv_name_set(aTHX_ a,b,c,d)
#define hv_scalar(a) Perl_hv_scalar(aTHX_ a)
-#define hv_undef(a) Perl_hv_undef(aTHX_ a)
#define init_i18nl10n(a) Perl_init_i18nl10n(aTHX_ a)
#define init_i18nl14n(a) Perl_init_i18nl14n(aTHX_ a)
#define init_stacks() Perl_init_stacks(aTHX)
diff --git a/global.sym b/global.sym
index 23e7bb99ce..c2cc132bae 100644
--- a/global.sym
+++ b/global.sym
@@ -219,7 +219,7 @@ Perl_hv_scalar
Perl_hv_store
Perl_hv_store_ent
Perl_hv_store_flags
-Perl_hv_undef
+Perl_hv_undef_flags
Perl_init_i18nl10n
Perl_init_i18nl14n
Perl_init_stacks
diff --git a/hv.c b/hv.c
index a3dd133180..7f2eed7d85 100644
--- a/hv.c
+++ b/hv.c
@@ -1815,7 +1815,7 @@ Undefines the hash.
*/
void
-Perl_hv_undef(pTHX_ HV *hv)
+Perl_hv_undef_flags(pTHX_ HV *hv, U32 flags)
{
dVAR;
register XPVHV* xhv;
diff --git a/hv.h b/hv.h
index 6a4132434f..602cf56b3f 100644
--- a/hv.h
+++ b/hv.h
@@ -435,6 +435,7 @@ C<SV*>.
#define hv_iternext(hv) hv_iternext_flags(hv, 0)
#define hv_magic(hv, gv, how) sv_magic(MUTABLE_SV(hv), MUTABLE_SV(gv), how, NULL, 0)
+#define hv_undef(hv) Perl_hv_undef_flags(aTHX_ hv, 0)
/* available as a function in hv.c */
#define Perl_sharepvn(sv, len, hash) HEK_KEY(share_hek(sv, len, hash))
diff --git a/proto.h b/proto.h
index 6679e59dd4..2dd44c3edd 100644
--- a/proto.h
+++ b/proto.h
@@ -1438,7 +1438,8 @@ PERL_CALLCONV SV* Perl_hv_scalar(pTHX_ HV *hv)
/* PERL_CALLCONV SV** Perl_hv_store(pTHX_ HV *hv, const char *key, I32 klen, SV *val, U32 hash); */
/* PERL_CALLCONV HE* Perl_hv_store_ent(pTHX_ HV *hv, SV *key, SV *val, U32 hash); */
/* PERL_CALLCONV SV** Perl_hv_store_flags(pTHX_ HV *hv, const char *key, I32 klen, SV *val, U32 hash, int flags); */
-PERL_CALLCONV void Perl_hv_undef(pTHX_ HV *hv);
+/* PERL_CALLCONV void hv_undef(pTHX_ HV *hv); */
+PERL_CALLCONV void Perl_hv_undef_flags(pTHX_ HV *hv, U32 flags);
/* PERL_CALLCONV I32 ibcmp(pTHX_ const char* a, const char* b, I32 len)
__attribute__nonnull__(pTHX_1)
__attribute__nonnull__(pTHX_2); */