summaryrefslogtreecommitdiff
path: root/proto.h
diff options
context:
space:
mode:
authorBen Morrow <ben@morrow.me.uk>2009-10-22 23:17:51 +0200
committerRafael Garcia-Suarez <rgs@consttype.org>2009-10-22 23:17:51 +0200
commitf0826785082983bd9b5ba16476c6867f3b390fb9 (patch)
treef9b18510046eacdecbfaca3f2cefbd5ca2865b83 /proto.h
parentdc35ab6e9838269debf9973a573bbd31031f3f31 (diff)
downloadperl-f0826785082983bd9b5ba16476c6867f3b390fb9.tar.gz
RT#69616: regexp SVs lose regexpness in assignment
It uses reg_temp_copy to copy the REGEXP onto the destination SV without needing to copy the underlying pattern structure. This means changing the prototype of reg_temp_copy, so it can copy onto a passed-in SV, but it isn't API (and probably shouldn't be exported) so I don't think this is a problem.
Diffstat (limited to 'proto.h')
-rw-r--r--proto.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/proto.h b/proto.h
index 89b48e6651..87588fef3f 100644
--- a/proto.h
+++ b/proto.h
@@ -2557,10 +2557,10 @@ PERL_CALLCONV void Perl_pregfree2(pTHX_ REGEXP *rx)
#define PERL_ARGS_ASSERT_PREGFREE2 \
assert(rx)
-PERL_CALLCONV REGEXP* Perl_reg_temp_copy(pTHX_ REGEXP* r)
- __attribute__nonnull__(pTHX_1);
+PERL_CALLCONV REGEXP* Perl_reg_temp_copy(pTHX_ REGEXP* ret_x, REGEXP* rx)
+ __attribute__nonnull__(pTHX_2);
#define PERL_ARGS_ASSERT_REG_TEMP_COPY \
- assert(r)
+ assert(rx)
PERL_CALLCONV void Perl_regfree_internal(pTHX_ REGEXP *const rx)
__attribute__nonnull__(pTHX_1);