diff options
author | Ben Morrow <ben@morrow.me.uk> | 2009-10-22 23:17:51 +0200 |
---|---|---|
committer | Rafael Garcia-Suarez <rgs@consttype.org> | 2009-10-22 23:17:51 +0200 |
commit | f0826785082983bd9b5ba16476c6867f3b390fb9 (patch) | |
tree | f9b18510046eacdecbfaca3f2cefbd5ca2865b83 /proto.h | |
parent | dc35ab6e9838269debf9973a573bbd31031f3f31 (diff) | |
download | perl-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.h | 6 |
1 files changed, 3 insertions, 3 deletions
@@ -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); |