This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
SVf_IsCOW
authorFather Chrysostomos <sprout@cpan.org>
Wed, 14 Nov 2012 21:02:48 +0000 (13:02 -0800)
committerFather Chrysostomos <sprout@cpan.org>
Wed, 14 Nov 2012 21:10:58 +0000 (13:10 -0800)
commite3918bb703cafa92e5a8d957a810cafe3334d9a1
tree0dc55cf37087f45a20d83132e32b1f5fb8feb14d
parente9cb264cbba0cfffe4b822389c0be43c54755b66
SVf_IsCOW

As discussed in ticket #114820, instead of using READONLY+FAKE to mark
a copy-on-write string, we should make it a separate flag.

There are many modules in CPAN (and 1 in core, Compress::Raw::Zlib)
that assume that SvREADONLY means read-only.  Only one CPAN module,
POSIX::pselect will definitely be broken by this.  Others may need to
be tweaked.  But I believe this is for the better.

It causes all tests except ext/Devel-Peek/t/Peek.t (which needs a tiny
tweak still) to pass under PERL_OLD_COPY_ON_WRITE, which is a prereq-
uisite for any new COW scheme that creates COWs under the same cir-
cumstances.
dump.c
ext/XS-APItest/core_or_not.inc
mro.c
op.c
op.h
pp.c
pp_hot.c
pp_sys.c
sv.c
sv.h
t/op/tr.t