summaryrefslogtreecommitdiff
path: root/embed.fnc
diff options
context:
space:
mode:
authorYves Orton <demerphq@gmail.com>2023-03-16 18:40:35 +0100
committerYves Orton <demerphq@gmail.com>2023-03-18 20:57:59 +0800
commit6dd040ff2f6f01a817731d112756188ddb541a18 (patch)
treea78475aea0b7c8ea6e0e05afd8a11db1ea6a2823 /embed.fnc
parente2e830cd93e16aedc6c6225069eeb7bdfc431a43 (diff)
downloadperl-6dd040ff2f6f01a817731d112756188ddb541a18.tar.gz
sv.h - add SvREFCNT_dec_set_NULL()
and also SvREFCNT_dec_ret_NULL() which is used to implement SvREFCNT_dec_set_NULL(). The set_NULL() macro is intended to be used to replace code like this: if (sv) { SvREFCNT_dec_NN(sv); sv = NULL; } The function form just facilitates it, and can be used in situations where returning NULL after decrementing a refcount would be reduce code complexity.
Diffstat (limited to 'embed.fnc')
-rw-r--r--embed.fnc4
1 files changed, 4 insertions, 0 deletions
diff --git a/embed.fnc b/embed.fnc
index 176dc27c80..59956aae7a 100644
--- a/embed.fnc
+++ b/embed.fnc
@@ -3202,6 +3202,10 @@ Adp |SV * |sv_ref |NULLOK SV *dst \
|const int ob
AMdip |void |SvREFCNT_dec |NULLOK SV *sv
AMdip |void |SvREFCNT_dec_NN|NN SV *sv
+Adip |SV * |SvREFCNT_dec_ret_NULL \
+ |NULLOK SV *sv
+Adm |void |SvREFCNT_dec_set_NULL \
+ |NULLOK SV *sv
AMTdip |SV * |SvREFCNT_inc |NULLOK SV *sv
AMTdip |SV * |SvREFCNT_inc_NN|NN SV *sv
AMTdip |void |SvREFCNT_inc_void \