This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Add newSVsv_nomg() macro which is like newSVsv() but does not process get magic
[perl5.git] / sv.h
diff --git a/sv.h b/sv.h
index f3392b0..3a648e4 100644 (file)
--- a/sv.h
+++ b/sv.h
@@ -2175,6 +2175,11 @@ struct clone_params {
   AV *unreferenced;
 };
 
+/* SV_NOSTEAL prevents TEMP buffers being, well, stolen, and saves games
+   with SvTEMP_off and SvTEMP_on round a call to sv_setsv.  */
+#define newSVsv(sv) newSVsv_flags((sv), SV_GMAGIC|SV_NOSTEAL)
+#define newSVsv_nomg(sv) newSVsv_flags((sv), SV_NOSTEAL)
+
 /*
 =for apidoc Am|SV*|newSVpvn_utf8|const char* s|STRLEN len|U32 utf8